我有一个运行SQL Server 2005 DB作为后端的Web应用程序。我把生产站点的数据库带回了我的开发机器中。然后我尝试使用登录“sa”来查询这个数据库。当我尝试执行“选择*来自客户”查询,我收到一条消息,例如“无效的对象名称'客户” 但是当我运行“ SELECT * FROM [352974_mg4l1]。[Customers] ”时,它正在返回记录。 当我从生产中恢复数据库备份时,352974_mg4l1是此数据库的用户。 使用我最初使用的简单选择查询(“选择*来自客户”)获取记录所需要做的工作。我知道这与登录问题有关。任何人都可以告诉我如何解决这个问题?
答案 0 :(得分:2)
客户数据库对象不属于dbo架构。
通过将客户称为'sa',您正在寻找[dbo]。[客户]?
我建议:
编辑:
要更改所述表的架构,请尝试以下方法:
ALTER SCHEMA dbo TRANSFER [352974_mg4l1].Customers;
答案 1 :(得分:0)
在线查找Books中的sp_changeobjectowner。这将有助于您更改所有者。真正的问题是如何将对象创建给特定的所有者。如果在prod上这是真的,那么访问数据库的其他人可能会遇到一些重大问题。