簡體   English   中英

從 Visual Studio 連接到 SQL Server 數據庫的問題

[英]Issue with connecting to SQL Server database from Visual Studio

我已經用 C# 創建了一個簡單的 Windows 窗體應用程序,現在發現很難將它連接到 SQL Server 數據庫。 我已經在 Visual Studio 中創建了數據庫。 但是,一旦我嘗試插入數據,就會出現 SQL 異常。 我的猜測是連接數據源中存在問題,即 con 變量。 請幫我找到解決辦法。

SqlConnection con = new SqlConnection("Data Source=(LocalDB)\\MSSQLLocalDB;Initial Catalog=Database1;Integrated Security=SSPI");

SqlCommand cmd;
SqlDataAdapter adapt;

if (textBox1.Text != "" && textBox2.Text != "" && textBox3.Text != "")
{
    cmd = new SqlCommand("insert into [dbo].[user] (Id, username, password) values (@id, @name, @state)", con);

    con.Open();

    cmd.Parameters.AddWithValue("@id", textBox1.Text);
    cmd.Parameters.AddWithValue("@name", textBox2.Text);
    cmd.Parameters.AddWithValue("@state", textBox3.Text);

    cmd.ExecuteNonQuery();
    con.Close();

    MessageBox.Show("Record Inserted Successfully");
}
else 
{
    MessageBox.Show("Please Provide Details!");
}

數據庫文件名是

\WindowsFormsApplication1\WindowsFormsApplication1\Database1.mdf

如果您在 SQL Server 的實際實例(這可以是您機器上的本地實例)上創建數據庫,則連接字符串的數據源似乎不太正確。

數據源=DESKTOP-XXXXXXX/Shenal Burkey

這有兩個問題,首先斜杠 (/) 實際上應該是一個反斜杠 ()。 其次,在斜線之后你有一個帶空格的“Shenal Burkey”。 SQL Server 實例名稱不能包含空格字符。 也就是說,如果您將 SQL Server 作為命名實例安裝,則需要在該位置指定命名實例,如果您接受默認實例名稱,則它應該是“MSSQLSERVER”。 如果您使用默認實例名稱,您可以指定您的連接字符串,如下所示:

Data Source=DESKTOP-XXXXXXX\MSSQLSERVER

或者您可以完全省略實例名稱並使用:

Data Source=DESKTOP-XXXXXXX

另外,只是一個提示,您會注意到我用 X 替換了您桌面主機名的細節,我個人建議編輯您的問題並執行相同操作。 它可能看起來沒有用,但有人可能會撿起它並找到一種狡猾的方法來造成一些傷害。 安全總比后悔好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM