台灣最大程式設計社群網站
線上人數
1419
 
會員總數:231080
接案會員:6781
文章總數:2319
討論主題:175358
歡迎您免費加入會員
討論區列表 >> ASP.NET >> 查詢資料表中是否已有某筆資料
[變換順序]
[我要回覆]
1


回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
查詢資料表中是否已有某筆資料
價值 : 10 QP  點閱數:3172 回應數:4

樓主

小月
門外漢
0 34
302 19
發送站內信

我的資料表
排行編號 int 主KEY
菜單編號 int
排行數量 int

我現在有一筆資料
菜單編號:25
排行數量3


我想要寫入這個資料表
若是原本就有這個菜單編號 就更新 累積數目就好
若沒有就新增一筆資料到資料表中

現在我不會查詢他到底是有沒有這筆資料

我想要的是






If GridView1.SelectedDataKey.Value <> dr.Item("菜單編號") Then
這一行就出錯了
他說:當讀取器關閉時嘗試呼叫 MetaData 無效。
我想要查詢 某資料表中 有沒有相同名稱的資料
若沒有 就新增進去 若已有 就更新此筆資料
請問我該怎嚜做





本篇文章發表於2009-10-15 18:46
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

rico
捐贈 VP 給 rico 檢舉此回應
hi
你可以先查詢筆數是否有大於0筆
select count(1) from mytable where id=1;
如果rows>0就更新資料
相反就新增資料

本篇文章回覆於2009-10-15 19:11
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

小月
檢舉此回應
rico大大
我懂你的意思了
但是我不會寫程式碼耶 你能幫幫我嗎
是把字串改成
Dim str2 As String = "select count(1) from 銷售排行紀錄表 where 菜單編號='" & GridView1.SelectedDataKey.Value & "'"

這樣就好媽 其他都不用改嗎

本篇文章回覆於2009-10-16 01:18
--未登入的會員無法查看對方簽名檔--
3樓
最有價值解答

RuRu
檢舉此回應
我覺得妳的程式邏輯有一點奇怪,
1.請問排名編號是指數量排名順序嗎?為何要放在資料表裡,
排名是隨時一直變動的,建議不要寫在資料表裡,
如果我有會錯意請跳過這點。
2.「若是原本就有這個菜單編號 就更新 累積數目就好
若沒有就新增一筆資料到資料表中」
請問你的資料是指哪個資料表?
我以為你說的資料表應該是銷售排行紀錄表,
但你新增的程式又寫新增到訂購記錄?
應該是兩個表都要新增出該筆資料才對。
3.你參數的觀念好像不是很熟,
參數名稱跟sql語法都對不起來,
可以再去看查查這方面的書籍或資料。
以上三點是我個人的意見,提供給你參考。



本篇文章回覆於2009-10-16 10:46
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

小月
檢舉此回應
RURU大大
我後面寫錯了 我是 如果沒有該筆資料在資料表中
就新增進去銷售排行資料表 我寫成 新增進交易紀錄資料表
卸卸你 因為你的幫助我的問題已經解決^^

本篇文章回覆於2009-10-18 03:45
--未登入的會員無法查看對方簽名檔--
[變換順序]
1
 

回覆
如要回應,請先登入.