我一直在為我的網路應用程式創建一個注冊頁面,但是我在將我的資料庫連接到我的網路應用程式時遇到了問題。前端編碼正確,沒有錯誤
這是 Onclick 方法中的后端代碼:
SqlConnection conn = new SqlConnection(@"Data Source=TARISAI;"
"Initial Catalog=FarmCentral;"
"Integrated Security=SSPI;");
try
{
//SqlConnection conn = new SqlConnection(strcon);
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
//insert values from web application to SQL database
SqlCommand cmd = new SqlCommand("INSERT INTO employee_tbl (full_name, date_of_birth, contact, email, province, city, postcode, address, employeeID, Password) "
"values(@full_name, @date_of_birth, @contact, @email,@province, @city, @postcode, @address, @employeeID, @Password)", conn);
// link data to textboxes
cmd.Parameters.AddWithValue("@full_name", namebox.Text.Trim());
cmd.Parameters.AddWithValue("@date_of_birth", dobbox.Text.Trim());
cmd.Parameters.AddWithValue("@contact", contactbox.Text.Trim());
cmd.Parameters.AddWithValue("@email", emailbox.Text.Trim());
cmd.Parameters.AddWithValue("@province", provincedrop.SelectedItem.Value);
cmd.Parameters.AddWithValue("@city", citybox.Text.Trim());
cmd.Parameters.AddWithValue("@post code", postcodebox.Text.Trim());
cmd.Parameters.AddWithValue("@employeeID", employeeIDbox.Text.Trim());
cmd.Parameters.AddWithValue("@Password", passbox.Text.Trim());
cmd.ExecuteNonQuery();
conn.Close();
Response.Write("<script>alert('Sign Up Successful. Go to Employee Login to Login');</script>");
}
catch(Exception exx)
{
Response.Write("<script>alert('" exx.Message "');</script>");
}
當我單擊注冊時,它會重繪 頁面但不執行操作。沒有提示,也沒有將值添加到資料庫中。我錯過了什么還是我做錯了什么
uj5u.com熱心網友回復:
好的,你有 sql server express 運行嗎?
你有安裝sql studio嗎?
真的,如果沒有,那么讓上述作業。它會幫助你哦。
接下來:
構建連接字串?
讓系統為您做到這一點。
因此,您無需鍵入該連接,但更好的是 Visual Studio 構建器可以為您“制作”和“創建”連接。一個不錯的感覺是它還可以讓您單擊測驗連接。
甚至更好?
您的連接字串現在不必在代碼中。再次在這里拯救世界和你的鍵盤。
所以,在你的網路專案中,去這里:

有了上面,這真的很容易,因為您只需按照提示進行操作。所以,點擊[...],然后就可以連接到sql server了。
所以,我們點擊上面,得到這個:
所以,現在這一切都下降了——這里有很多人牽手。
我可以點擊服務器 - 出現一個下拉選擇。
資料庫也是如此:
例如這個:

選擇資料庫后,我可以點擊測驗連接。
例如這個:

所以,現在完成后,我有這個:

好的,現在在代碼中?
說這個:
//insert values from web application to SQL database
string strSQL
= "INSERT INTO employee_tbl (full_name, date_of_birth, contact, email, province, city, postcode, "
"address, employeeID, Password) "
"values (@full_name, @date_of_birth, @contact, @email,@province, @city, @postcode, @address, @employeeID, @Password)";
using (SqlConnection conn = new SqlConnection(Properties.Settings.Default.TEST4))
{
using (SqlCommand cmd = new SqlCommand(strSQL, conn))
{
cmd.Parameters.Add("@full_name", SqlDbType.NVarChar).Value = namebox.Text;
cmd.Parameters.Add("@date_of_birth", SqlDbType.Date).Value dobbox.Text;
cmd.Parameters.Add("@contact", SqlDbType.NVarChar).Value = contactbox.Text;
cmd.Parameters.Add("@email", SqlDbType.NVarChar).Value = emailbox.Text;
cmd.Parameters.Add("@province", SqlDbType.NVarChar).Value = provincedrop.SelectedItem.Value;
cmd.Parameters.Add("@city", SqlDbType.NVarChar).Value = citybox.Text;
cmd.Parameters.Add("@post code", SqlDbType.NVarChar).Value = postcodebox.Text;
cmd.Parameters.Add("@employeeID", SqlDbType.Int).Value = employeeIDbox.Text;
cmd.Parameters.Add("@Password", SqlDbType.NVarChar).Value = passbox.Text;
conn.Open();
cmd.ExecuteNonQuery();
}
}
所以,請注意我是如何使用我們設定的連接字串的(因此只需要應用程式中的一個位置 - 允許您輕松更改它)。
而且您永遠不必測驗連接是否打開 - 如果您這樣做了,那么您的代碼就會混亂,并且沒有遵循上述模式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/491561.html
上一篇:在資料透視表中使用SUM函式
下一篇:SQL-過濾掉欄位名
