Asp.net无效的对象名称错误运行SQL Server 2008
我想运行一个查询,如下所示的查询时:Asp.net无效的对象名称错误运行SQL Server 2008
SqlCommand putuser = new SqlCommand("INSERT INTO MainDB(NumberofEmployees) VALUES(4)", cn);
putuser.ExecuteNonQuery();
我得到一个无效的对象名称错误名为MainDB表。 我查看了以下内容:
- 查询在数据库中运行时工作。
- 我连接到正确的数据库。
- 数据库确实有一个表名。
我正在使用表单身份验证。我如何做到这一点,以便任何访问应用程序的人都可以将此插入到数据库中。插入最初发生在用户创建后。
您是否在使用Windows身份验证或SQL Server身份验证的连接字符串?
如果使用SQL Server身份验证,使用方法:
<add name="ConnectionString"
connectionString="Data Source=127.0.0.1; Initial Catalog=DataBase;Persist Security Info=True;User ID=user; Password=password
,那么你需要确保用户可以访问数据库和架构正在使用。
如果您使用的是Windows身份验证,使用
<add name="ConnectionString"
connectionString="Data Source=127.0.0.1; Initial Catalog=DataBase;Trusted_Connection=Yes;Persist Security Info=True;"/>
,那么你需要确保你使用的是在您的App_Pool(运行应用程序的Windows帐户)的用户添加为登录/用户在数据库上,并有权运行查询。
编辑
您可以使用SQL Server Management Studio中要做到这一点,一步一步的指示,可以发现here和here
感谢您的帮助,我将如何确保用户有权运行查询?我使用MS SQL 2008的管理工作室。 – Fernando
检查编辑并接受答案,如果它解决了您的问题 – Constantin
这将是有帮助的从这里异常的消息。 –
如果将其更改为'dbo.MainDB',该怎么办? – V4Vendetta
“我如何制作它,以便任何访问应用程序的人都可以将此插入到数据库中。”如果我理解正确,这将在连接字符串中指定:http://geekdeck.com/understanding-sql-server-connection-string/(请参阅集成安全性)。 –