我的ADO.NET查询有问题。我成功地创建了数据库。此数据库中只有一个表(RegUsers
)(我只是使用ADO.NET测试工作)。编辑:Databese基于Microsoft Azure
创建我的表:
CREATE TABLE [dbo].[RegUsers] (
[Id] INT NOT NULL,
[Login] VARCHAR (50) NOT NULL,
[Password] VARCHAR (50) NOT NULL,
[Name] VARCHAR (50) NOT NULL,
[Surname] VARCHAR (50) NOT NULL,
PRIMARY KEY CLUSTERED ([Id] ASC));
我创建SqlConnecion
并成功连接到数据库(我希望成功,如果我可以打开连接)然后我想用INSERT
数据进入此表:
SqlConnectionStringBuilder csBuilder;
csBuilder = new SqlConnectionStringBuilder();
csBuilder.DataSource = "********.database.windows.net";
csBuilder.Encrypt = true;
csBuilder.TrustServerCertificate = false;
csBuilder.UserID = "************".ToString();
csBuilder.Password = "********".ToString();
csBuilder.ConnectTimeout = 30
SqlConnection con = new SqlConnection(csBuilder.ToString());
con.Open();
string PlneniDaty =
@"INSERT INTO [dbo].[RegUsers] (Login,Password,Name,Surname)"+
@" VALUES ('MyLogin','MyPassword','Pavel','Novak')";
SqlCommand NaplDaty = new SqlCommand(PlneniDaty, con);
NaplDaty.ExecuteNonQuery();
con.Close();
每当我执行此命令时它会显示错误:
无效的对象名称'dbo.RegUsers'
(是的,表已成功创建,我可以在SQL Server对象资源管理器中看到它)
问题出在哪里?
答案 0 :(得分:1)
您的整个代码看起来不错。您可以发布您的connectionString。 以下是你需要检查的事情。
答案 1 :(得分:0)
如果我理解正确,你在数据库中执行插入查询dbo.RegUsers并且它会给出错误无效的对象名称' dbo.RegUsers'?这只是意味着表找不到一个名为" RegUsers"的对象。这有几个可能的原因:
该对象不存在,可能是因为架构和/或数据库不存在 该对象存在,但数据库区分大小写,并且名称的某些部分与代码中的名称不匹配
您需要进行更多调查以了解原因是什么,但作为一个完整的猜测,您的生产服务器同时拥有RegUsers和数据库?
最后,在发布问题时,请始终包含您的SQL Server版本(2000/2005/2008)和版本(Express,Standard,Enterprise);在谈论模式和权限时,它们可能非常重要,因为功能和行为可能不同。
答案 2 :(得分:0)
从我的创建脚本中可以看出,您的表名是RegUzivatele,而您正在尝试插入表名RegUsers,这当然不存在。< / p>