Andy Soell Asked: 2011-06-17 08:41:34 +0800 CST2011-06-17 08:41:34 +0800 CST 2011-06-17 08:41:34 +0800 CST 更改 SQL Server 2000 用户名 772 我们正在运行一个 SQL Server 2000 实例,用户绑定到 Windows 帐户。许多用户名中都有空格,这给我们带来了一些问题。我们希望能够重命名它们以消除空间,但我无法弄清楚这是如何完成的。我希望得到一些帮助。 sql-server-2000 users 1 个回答 Voted Best Answer gbn 2011-06-17T09:16:25+08:002011-06-17T09:16:25+08:00 一些注意事项 创建登录名时,名称必须与 AD 完全匹配 EXEC sp_grantlogin 'DOMAIN\Andy Soell 当您将登录映射到数据库用户时,它可以重命名 EXEC sp_grantdbaccess 'DOMAIN\Andy Soell', 'Dilbert' 第二位将使用隐含模式解决您的问题。如果不限定架构(例如 dbo)就会发生这种情况,因为 SQL Server 2000 几乎没有像更高版本那样的用户架构分离 注意:您不能在 SQL Server 2000 IIRC 中重命名用户:需要运行 sp_revokedbaccess,然后运行 sp_grantdbaccess。如果您因为隐含模式而拥有对象,那么您将需要 sp_changeobjectowner。我认为 SQL EM 会提示您。 也就是说,您应该始终限定 SQL Server 中的架构。 CREATE TABLE dbo.viewname... SELECT * FROM dbo.myTable EXEC dbo.MyProc 然后不需要更改用户
一些注意事项
EXEC sp_grantlogin 'DOMAIN\Andy Soell
EXEC sp_grantdbaccess 'DOMAIN\Andy Soell', 'Dilbert'
第二位将使用隐含模式解决您的问题。如果不限定架构(例如 dbo)就会发生这种情况,因为 SQL Server 2000 几乎没有像更高版本那样的用户架构分离
注意:您不能在 SQL Server 2000 IIRC 中重命名用户:需要运行 sp_revokedbaccess,然后运行 sp_grantdbaccess。如果您因为隐含模式而拥有对象,那么您将需要 sp_changeobjectowner。我认为 SQL EM 会提示您。
也就是说,您应该始终限定 SQL Server 中的架构。
然后不需要更改用户