1
我想使用參數向數據庫插入一些信息,但不是添加參數值,而是將參數名稱添加到數據庫。 這裏是我的代碼:爲什麼參數在我的INSERT語句中不起作用?
try {
vSqlCeConnection.Open();
SqlCeCommand vCommand = new SqlCeCommand(@"INSERT INTO BusinessCards
( CalligraphyNeeded , Comments , NameEnglish
, JobTitleEnglish , NameArabic , JobTitleArabic
,BOBOX , HomePhoneNumber
, FAXNumber , OfficePhoneNumber , MobileNumber , Email)
VALUES
( @CalligraphyNeeded, '@Comments' ,'@NameEnglish'
,'@JobTitleEnglish' ,'@NameArabic' ,'@JobTitleArabic'
,'@BOBOX' ,'@HomePhoneNumber'
,'@FAXNumber' ,'@OfficePhoneNumber' ,'@MobileNumber'
,'@Email' ) " , vSqlCeConnection);
if (checkBoxCalligraphy.Checked == true)
{
vCommand.Parameters.AddWithValue("@CalligraphyNeeded", 1);
}
else
{
vCommand.Parameters.AddWithValue("@CalligraphyNeeded", 0);
}
vCommand.Parameters.AddWithValue("@Comments", richTextBoxComments.Text);
vCommand.Parameters.AddWithValue("@NameEnglish", textBoxEnglishName.Text); vCommand.Parameters.AddWithValue("@JobTitleEnglish",richTextBoxEnglishJobTitle.Text);
vCommand.Parameters.AddWithValue("@NameArabic", textBoxArabicName.Text + " ff");
vCommand.Parameters.AddWithValue("@JobTitleArabic", richTextBoxArabicJobTiltle.Text + " ff");
vCommand.Parameters.AddWithValue("@BOBOX", textBoxPOBox.Text + " ff");
vCommand.Parameters.AddWithValue("@HomePhoneNumber", textBoxHomePhone.Text + " ff");
vCommand.Parameters.AddWithValue("@FAXNumber", textBoxFax.Text + " ff");
vCommand.Parameters.AddWithValue("@OfficePhoneNumber", textBoxOfficePhone.Text + " ff");
vCommand.Parameters.AddWithValue("@MobileNumber", textBoxMobile.Text + " ff");
vCommand.Parameters.AddWithValue("@Email", textBoxEmail.Text + " ff");
MessageBox.Show(vCommand.CommandText);
vCommand.Prepare();
vCommand.ExecuteNonQuery();
}
catch (Exception ex)
{
MessageBox.Show("Sorry error: " + ex.Message);
}
但是,當我執行的代碼是給我這個
謝謝JW, 什麼明顯的錯誤:( – Mutken 2013-03-16 11:29:32
歡迎您':在OP的代碼D'高興它幫助 – 2013-03-16 11:29:57
其實,第一個參數(CalligraphyNeeded)是正確的,即使做了它對數據庫作爲一個適當的價值。 – 2013-03-16 12:07:51