[SQL ] 判斷UI欄位是否重覆的問題,SQL如何下?

看板Database作者 (kucom)時間16年前 (2009/05/15 10:54), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
大家好,我有個問題,想了一下,不知道怎樣的解決方案比較好, 請大家給我一些意見,謝謝! 資料表 ProdInfo,有二個欄位,如下: ProdID:自動編號,主鍵 ProdName:字串,不可重覆 資料如下: ProdID ProdName 1 PCB 2 RF 3 PA UI介面,同樣有二個欄位,可對PodInfo做巡覽,新增,修改 當我做新增時,我要判斷user所輸入的ProdName是否已存在於ProdName, 我用 select count(*) form ProdInfo where ProdName='userkeyin' 如果count>0,就回傳true,在UI畫面顯示錯誤訊息 但,我的問題題是:當我做修改功能時, 我要如何判斷user所輸入的ProdName是否已存在於ProdName,存在就顯示錯誤訊息 並且判斷user鍵入的值如果是該ProdID原本的ProdName值,則不顯示錯誤訊息 例:user今天對ProdID=2,ProdName=RF做修改,UI設計只能修改ProdName值 如果user鍵入PA,系統就會判斷出PA已在在ProdInfo中,不能再鍵入(正常) 如果user再次鍵入RF,若用上述sql去判斷,系統會一直告知已存在,(不正常) 但問題是user只填了該欄位原本的值,資料庫是不會有重覆資料存在的,只是多做一次修改 的sql select count(*) form ProdInfo where ProdName='RF' 所以我要如何下一道SQL是:判斷輸入的值是否已存在DB,如果此值是原本該ID該NAME的值, 就允許修改 再請大家給我意見,謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.96.98.77

05/16 00:18, , 1F
1.unique constraints 2.update=delete+insert 3.AP判斷
05/16 00:18, 1F
文章代碼(AID): #1A3Dbr2I (Database)