[英]ExecuteNonQuery doesn't update SQL server
我正在使用這些線路連接到SQL Server
SqlCommand scom = new SqlCommand(testing, conn);
scom.ExecuteNonQuery();
如果testing
的價值很簡單:
string testing = "Insert INTO People (ID, Name) values (123,'Lara')";
它完美地工作。 但是,如果我使用類似:
String testing = "Insert INTO People (ID, Name) values (123,'Lara')" +
" ON DUPLICATE KEY UPDATE Name = 'Lara'";
SQL服務器未更新,代碼轉到catch語句,如果我使用if exist
它也將無法正常工作。 這是我的代碼,需要更多說明:
SqlConnection conn = new SqlConnection("Data Source=ServerName;" +
"Initial Catalog=DataBaseName;" +
"Integrated Security=True;");
try
{
conn.Open();
string testing= "Insert INTO People (ID, Name) values (123,'Lara')";
SqlCommand scom = new SqlCommand(testing, conn);
scom.ExecuteNonQuery();
MessageBox.Show("Saved! ");
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
System.Windows.Forms.MessageBox.Show("Halted! ");
}
finally
{
conn.Close();
}
沒有等效的DUPLICATE KEY UPDATE
,但MERGE
和WHEN MATCHED
可能對您WHEN MATCHED
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.