【发布时间】:2012-03-05 02:24:24
【问题描述】:
在发布这个问题之前,我确实花了一个小时搜索。
该表确实存在,我可以查询该表,我可以看到结果集,但是当我尝试从 Visual Studio 2008 执行时,我收到以下错误:
Cannot find the object "Products" because it does not exist or you do not have permissions
为什么会出现这个错误,我应该怎么做才能解决它?
using (System.Data.SqlClient.SqlCommand cmd = connection.CreateCommand() as System.Data.SqlClient.SqlCommand)
{
cmd.CommandText = "SET IDENTITY_INSERT Products ON";
cmd.CommandType = CommandType.Text;
cmd.ExecuteNonQuery();
}
我尝试指定dbo.Products,在执行之前我还尝试了use dbname,但这没有帮助。
【问题讨论】:
-
您是该表的所有者还是拥有该表的
ALTER权限?这些是在表上执行SET IDENTITY_INSERT的权限先决条件。 -
ConnectionString 是否指定了正确的数据库?
-
@Pat:是的,它指向正确的数据库,正如我所说,如果我连接到不同的表,它可以正常工作
-
@Shark:我能够在查询中运行
SET IDENTITY_INSERT,我没有收到任何错误 -
也许 Products 表是在与 Visual Studio 连接的 SQL Server 实例不同的 SQL Server 实例中创建的,例如,阶段而不是开发。
标签: sql-server-2008