SQL Server 2005 与 Windows 7 的问题

SQL Server 2005 与 Windows 7 的问题

首先,我从其他服务器恢复了数据库,现在所有存储过程都命名为 [azamsharp].[usp_getlatestposts]。我认为 [azamsharp] 是有前缀的,因为它是原始服务器上的用户。

现在,在我的本地机器上它无法运行。我不希望所有存储过程都带有 [azamsharp] 前缀。

另外,当我右键单击 Sproc 时,我甚至看不到属性选项。我在 Windows 7 上运行 SQL Server 2005。

更新:

当我运行孤立用户存储过程时,它显示了两个用户“azamsharp”和“dbo1”。我修复了“azamsharp”用户,但“dbo1”没有得到修复。当我运行以下脚本时:

exec sp_change_users_login 'update_one', 'dbo1', 'dbo1'

我收到以下错误:

消息 15291,级别 16,状态 1,过程 sp_change_users_login,第 131 行终止此过程。登录名 'dbo1' 不存在或无效。

答案1

通过备份/恢复进行的恢复绝不会重命名数据库中的任何对象。数据库恢复的结果是与备份的数据库相同。如果在恢复的数据库 [schema].[object] 中命名了这些过程,那么我保证它们在旧服务器上的名称也是一样的。

最有可能发生的情况是,您没有意识到在旧服务器上,您登录的用户具有与之关联的隐式模式,并且当您发出类似的语句时select from tableexecute usp_foo您会自动绑定到默认模式。

您必须与旧服务器的管理员核实,以便他友好地告知您系统上的权限和默认设置,然后请求新服务器的管理员慷慨地恢复您相同的权限和默认设置。

相关内容