[英]How to Establish database(sql) Connection to receive the data from textfields using c#?
我想建立數據庫連接以從Textfields接收數據並將該數據存儲在數據庫記錄中。 為此,到目前為止我已經嘗試過:
我已經創建了.mdf
數據庫文件,並且我已經創建了名為Table1
並且我已經放置了兩個文本字段和提交按鈕,其中包含以下代碼: data.aspx
<b>Username:<asp:TextBox ID="TextBox1" runat="server" BackColor="AliceBlue">
</asp:TextBox><br/>
<b>Lastname:<asp:TextBox ID="TextBox2" runat="server" BackColor="AliceBlue">
</asp:TextBox><br/>
<asp:Button ID="Button1" runat="server" Text="Submit" OnClick="SubmitBtn_Click"/>
代碼文件如下: data.aspx.cs
using System.Web.Configuration;
using System.Data.SqlClient;
protected void SubmitBtn_Click(object sender, EventArgs e)
{
string connectionStrings = "Data Source=|SQLEXPRESS;Integrated
Security=True; Connect Timeout=30;User Instance=True;";
using (SqlConnection sqlConnection = new SqlConnection(connectionStrings))
{
string insertStatement = "INSERT INTO Table1(column1,column2)
VALUES (@col1, @col2)";
SqlCommand sqlCommand = new SqlCommand(insertStatement, sqlConnection);
sqlCommand.Parameters.AddWithValue("@col1", TextBox1.Text);
sqlCommand.Parameters.AddWithValue("@col2", TextBox2.Text);
sqlConnection.Open();
sqlCommand.ExecuteNonQuery();
try
{
sqlConnection.Open();
sqlCommand.ExecuteNonQuery();
}
finally
{
sqlConnection.Close();
}
}
}
我還有如下配置文件來建立連接,代碼如下: web.config
<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
</system.web>
</configuration>
但對於該代碼,我在單擊提交按鈕后收到此錯誤:
建立與SQL Server的連接時發生與網絡相關或特定於實例的錯誤。 服務器未找到或無法訪問。 驗證實例名稱是否正確,以及SQL Server是否配置為允許遠程連接。 (提供者:命名管道提供程序,錯誤:40 - 無法打開與SQL Server的連接)
還有例外:
System.Data.SqlClient.SqlException:建立與SQL Server的連接時發生與網絡相關或特定於實例的錯誤。 服務器未找到或無法訪問。 驗證實例名稱是否正確,以及SQL Server是否配置為允許遠程連接。 (提供者:命名管道提供程序,錯誤:40 - 無法打開與SQL Server的連接)
誰能幫我?
檢查sql server實例是否正在運行。 轉到開始 - > SQL Server配置管理器
並檢查您的SQL Server實例是否已啟動。
或者嘗試將連接字符串更改為
string connectionStrings = "Data Source=.\SQLEXPRESS;
Initial Catalog=databaseName Integrated Security=True;";
拋出異常是因為您的SQL Server實例實際上無法訪問,或者您的SQL Server實例未啟動,或者有防火牆阻止了對默認1433端口的請求,以遠程訪問SQL Server實例。
閱讀文檔頁面: http : //msdn.microsoft.com/en-us/library/ms177440.aspx
記得檢查你的連接字符串。 你寫的連接字符串:
"Data Source=|SQLEXPRESS;Integrated
Security=True; Connect Timeout=30;User Instance=True;"
我認為這不正確。 如果您要連接到名為SQLEXPRESS的本地第二個SQL實例,則這是正確的連接字符串:
"Data Source=.\SQLEXPRESS;Integrated
Security=True; Connect Timeout=30;User Instance=True;"
此外,您正在使用設置Integrated Security=True;
。 這意味着您嘗試使用Windows憑據進行連接。 您確定您有權使用Windows憑據進行連接嗎? 如果沒有,請刪除此設置並添加您的用戶名和密碼,就像在此連接字符串中一樣:
"Data Source=.\SQLEXPRESS;User Id=sa; Password=sa123; Connect Timeout=30;"
閱讀有關使用Integrated Security
設置的這個有趣問題。
此外,您的SQLEXPRESS實例似乎是一個用戶實例 。 這個實例是否已啟用?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.