Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Смяна на собственик на маса

Правилният начин да направите това в SQL Server 2005 и по-нови е да спрете да мислите за префикса като за "собственик". sp_changeobjectowner процедура е отхвърлен от SQL Server 2005 и вместо това трябва да използвате DDL схема , напр.:

ALTER SCHEMA dbo TRANSFER [current_owner].tablename;

За да проверите текущия „собственик“ (това може да върне няколко реда, ако имате повече от едно tablename в множество схеми):

SELECT s.name
  FROM sys.schemas AS s
  INNER JOIN sys.tables AS t
  ON s.[schema_id] = t.[schema_id]
  WHERE t.name = N'tablename';

Също така се уверете, че изписвате обекта правилно. В съпоставяне, чувствително към главни и малки букви, например TABLENAME и tablename не са един и същ обект и изписването му с InCorrEcT CaSe също може да доведе до тази грешка.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Изравняване на пресичащи се времеви интервали

  2. Връщане на номера на дял за всеки ред при запитване на разделена таблица в SQL Server (T-SQL)

  3. Как да присъединя OPENXML данни към моята вътрешна заявка за присъединяване?

  4. Можем ли да откажем изтриване от конкретни таблици?

  5. Може ли SQL Server да изпрати уеб заявка?