C# MySQL 中
我程式都寫好了,在(textbox)空格中,按鈕一按就能新增資料
但怎麼做才能按一次就能新增案第二次,因為有該筆資料它就不能給你新增
String Update = string.Format(" UPDATE sales set Item = '" + TextBox7.Text + "',Price = '" + TextBox12.Text + "',Date = '" + TextBox13.Text + "' where Item='" + TextBox4.Text + "'");
以上我程式新增code其中一段
要用
If else 去判斷嗎?
還是 按鈕那裏去改?
C# Insert 如果有同樣一筆資料 能不要讓它重複新增嗎?
資料庫表格設定PK就不會重複新增
新增了就會丟出違反pk的錯誤
假如要server端判斷的話
可以在insert的時候加上insert into select from
+ not exists判斷
# 建立測試資料
create table temp_table (`NO` int);
insert into temp_table (`NO`) values (1);
# 以下演示要插入同樣一筆no=1的資料,但是經過select判斷有相同資料,所以不新增邏輯
# 記得把temp_table換成你的表格名稱
INSERT INTO temp_table (`NO`) #放你要新增的欄位名稱
SELECT * FROM (SELECT 1) #放你要新增的值
AS tmp
WHERE NOT EXISTS (
SELECT `NO` FROM temp_table WHERE `NO` = 1 #放查詢是否重複的查詢
) LIMIT 1;
先去查詢一次有沒有資料
假如有不新增,假如沒有就新增
有問題在跟我說 :)
大大 不用在後端
後面寫If else 判斷式去判斷嗎?
感謝大大回復
可以
參考這段code
void 你的按鍵事件(Object sender , EventArgs e){
var strSQL = "SELECT COUNT(*) FROM 你的表格 WHERE 表格欄位 = 'xxxx'";
var cmd = new MySqlCommand(strSQL, 你的連線物件);
var intNumRows = Convert.ToInt32(cmd.ExecuteScalar());
if(intNumRows > 0)
{
//作重複資料的提示
}
else{
//作更新動作
}
}
邏輯是假如有資料就提示重複資料,假如否就做更新動作
感謝大大 回復