首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL 2005无法删除用户

SQL 2005无法删除用户
EN

Stack Overflow用户
提问于 2009-05-28 21:42:19
回答 1查看 1.4K关注 0票数 2

我已将数据库从备份恢复到新服务器,并且无法从数据库中删除旧架构。我已经为此数据库创建了一个新用户。新用户的名称是不同的(为了让其他开发人员更清楚),所以我不需要这个模式。我最终设法删除了用户,但模式不会消失。

我收到的错误是“无法删除架构'‘,因为它正被对象引用”“

运行此脚本:

代码语言:javascript
复制
select * from sys.objects where schema_id = 5

...shows此架构‘拥有’的所有对象。

我的问题是我找不到一种方法来改变这些对象的所有权。一定有办法吧?感谢所有人

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-05-28 21:46:00

将object Thing从模式源移动到模式目标语法为:

代码语言:javascript
复制
ALTER SCHEMA Destination TRANSFER Source.Thing

要生成将所有对象传输到dbo方案的脚本,请执行Here's SQL操作:

代码语言:javascript
复制
SELECT 'ALTER SCHEMA dbo TRANSFER ' + SCHEMA_NAME(schema_id) + '.' + name
FROM sys.tables
WHERE schema_id != SCHEMA_ID('dbo');

要仅传输一个特定的模式:

代码语言:javascript
复制
SELECT 'ALTER SCHEMA NewSchema TRANSFER ' + SCHEMA_NAME(schema_id) + '.' + name
FROM sys.tables
WHERE schema_name(schema_id) = 'OldSchema'
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/923355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档