[英]SQL table doesn't exist
我對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對象資源管理器中看到它)
問題出在哪兒?
您的整個代碼看起來不錯。您可以發布connectionString。 接下來的事情你需要檢查。
如果我理解正確,則您正在數據庫dbo.RegUsers中執行插入查詢,並給出錯誤無效的對象名稱'dbo.RegUsers'? 這僅表示表無法找到名為“ RegUsers”的對象。 可能有以下幾種原因:
該對象不存在,可能是因為架構和/或數據庫不存在。該對象存在,但是數據庫區分大小寫,並且名稱的某些部分與代碼中的名稱不匹配
您需要進行更多調查,以找出導致您的情況的原因,但是作為一個完整的猜測,您的生產服務器同時具有RegUsers和數據庫?
最后,在發布問題時,請始終包括您的SQL Server版本(2000/2005/2008)和版本(Express,Standard,Enterprise); 在談論架構和權限時,它們可能非常重要,因為功能和行為可能有所不同。
據我在您的創建腳本中看到的那樣,表的名稱是RegUzivatele,而您試圖插入到表名RegUsers時,這當然是不存在的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.