sp_MSForEachTable 'EXEC sp_changeobjectowner ''?'',''stp'''
解决方案 »
- (附SQL)为什么我.net调用执行的存储过程会花一两分钟,而我在sqlserver中直接执行的只会花几秒种?
- 求一文本计算平均SQL
- insert into 表名 values() 与 insert 表名 select '插入值' union all select .....有什么区别
- 如何在MS SQL Server 上查询Sybase的数据?否则只好赶到招聘职场了!!:<
- 求助各位大大。。
- 查询条件中使用变量和hardcode字符常量的差别
- 数据库ER图 以及关系图
- 请问:在sqlserver2008 中,服务器中有安全角色(登入名,服务器角色),具体的数据库中有(用户,角色),具体有什么区别!
- 日期转换的小问题
- 如何实现跨数据库操作数据??
- 关于重复数据比例的问题
- 为什么读取excel为null
sp_changeobjectowner [ @objname = ] 'object' , [ @newowner = ] 'owner'参数
[@objname =] 'object'当前数据库中现有的表、视图或存储过程的名称。object 的数据类型为 nvarchar(517),没有默认值。object 可用现有对象所有者限定,格式为 existing_owner.object。[@newowner =] 'owner'即将成为对象的新所有者的安全帐户的名称。owner 的数据类型为 sysname,没有默认值。owner 必须是当前数据库中有效的 Microsoft? SQL Server? 用户或角色或 Microsoft Windows NT? 用户或组。指定 Windows NT 用户或组时,请指定 Windows NT 用户或组在数据库中已知的名称(用 sp_grantdbaccess 添加)。返回代码值
0(成功)或 1(失败)示例
下面的示例将 authors 表的所有者改为 Corporate\GeorgeW。EXEC sp_changeobjectowner 'authors', 'Corporate\GeorgeW'sp_changedbowner
更改当前数据库的所有者。语法
sp_changedbowner [ @loginame = ] 'login'
[ , [ @map = ] remap_alias_flag ]参数
[@loginame =] 'login'当前数据库新所有者的登录 ID。login 的数据类型为 sysname,没有默认值。login 必须是已存在的 Microsoft? SQL Server? 登录或 Microsoft Windows NT? 用户。如果 login 通过当前数据库内的现有别名或用户安全帐户已拥有访问该数据库的权限,则不能成为该数据库的所有者。为了避免这种情况,应先除去当前数据库中的别名或用户。[@map =] remap_alias_flag值为 true 或 false,表示旧数据库所有者 (dbo) 的现有别名是映射到当前数据库的新所有者还是要除去。remap_alias_flag 的数据类型为 varchar(5),默认值为 NULL,表示旧 dbo 的任何现有别名均映射到当前数据库的新所有者。false 表示除去旧数据库所有者的现有别名。返回代码值
0(成功)或 1(失败)示例
下面的示例使用户 Albert 成为当前数据库的所有者,并将旧数据库所有者的现有别名映射到 Albert。EXEC sp_changedbowner 'Albert'