線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:730
推到 Plurk!
推到 Facebook!

如何修改特定列資料?

尚未結案
giorgiowest
一般會員


發表:1
回覆:2
積分:0
註冊:2003-09-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-10-21 10:01:01 IP:163.28.xxx.xxx 未訂閱
目前我使用ADO去建構一個資料庫的前端, 在新增上面沒有問題,可是在修改以及刪除時, 發現由於我用的是update ..set的語法,所以當我在UPDATE資料時 會將同樣關鍵字的資料全部更新, 可是目前的情況下同樣關鍵字的資料必須要有很多筆, 即使是其他欄位也會有發生資料相同的問題, 可是我看到其他的程式如MYSQLCC跟 MSSQL的前端都沒有這個問題, 可以直接修改某特定資料列,這是怎麼做到的阿?請各位先進幫幫忙,謝謝
channel
尊榮會員


發表:67
回覆:707
積分:854
註冊:2002-05-02

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-10-21 10:11:15 IP:211.21.xxx.xxx 未訂閱
引言: 目前我使用ADO去建構一個資料庫的前端, 在新增上面沒有問題,可是在修改以及刪除時, 發現由於我用的是update ..set的語法,所以當我在UPDATE資料時 會將同樣關鍵字的資料全部更新, 可是目前的情況下同樣關鍵字的資料必須要有很多筆, 即使是其他欄位也會有發生資料相同的問題, 可是我看到其他的程式如MYSQLCC跟 MSSQL的前端都沒有這個問題, 可以直接修改某特定資料列,這是怎麼做到的阿?請各位先進幫幫忙,謝謝
不知您的Update語法是否有下Where即: Update ... Set ... Where PrimaryKey_Value = PrimaryKey_Value 也就是說您必須告訴Update或Delete語法要修改或刪除那一筆資料… 不知是否有誤會您的意思… ~小弟淺見,參考看看~
------
~小弟淺見,參考看看~
giorgiowest
一般會員


發表:1
回覆:2
積分:0
註冊:2003-09-02

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-10-21 10:27:32 IP:163.28.xxx.xxx 未訂閱
我的確是使用 Update ... Set ... Where PrimaryKey_Value = PrimaryKey_Value 但是問題來了 大部分的primarykey不外乎帳號,姓名,但是在我現在的情況下 同樣帳號及姓名的資料必須要重複! 這樣一旦我做上面的語句,則其他不需要更新或刪除的資料列也會刪除
ha0009
版主


發表:16
回覆:507
積分:639
註冊:2002-03-16

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-10-21 10:59:05 IP:61.30.xxx.xxx 未訂閱
你好: PK 是具有唯一性與不能重複的鍵值,因為 PK 值是每筆資料 的識別記號。如果你的 PK 是複合鍵那你必須完整的使用它。 。    
giorgiowest
一般會員


發表:1
回覆:2
積分:0
註冊:2003-09-02

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-10-21 12:13:45 IP:163.28.xxx.xxx 未訂閱
對不起,我的中文不太行,我把問題重述一次 現在我的資料表裡面 是這樣子的情況 empno name. record. money. 001 giorgio anyway 100 001 giorgio anyway 100 002 delphi foo 300 002 delphi foo 200 ... ..... .... .... 如果我想更新或是刪除其中一筆特定資料,例如第二筆giorgio的資料 用update.. set.. where empno=001, name=giorgio一定也會影響到第一筆資料 刪除也是,有沒有辦法,能夠只刪除或更新其中特定一列, 像mysqlCC等等的工具,還有dbgrid不是都可以只針對特定的資料列作處理嗎? 這是怎麼辦到的?拜託大家了,謝謝。
change.jian
版主


發表:29
回覆:620
積分:439
註冊:2003-06-02

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-10-21 13:14:28 IP:61.222.xxx.xxx 未訂閱
可以多加一些where的條件嗎?除非你兩筆資料長的完全一模一樣. 另外,我有點好奇,你如果有兩筆資料的Primary key如果都一樣,那你是怎麼把資料鍵進資料庫的?
ha0009
版主


發表:16
回覆:507
積分:639
註冊:2002-03-16

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-10-21 13:23:57 IP:61.30.xxx.xxx 未訂閱
你好: 由你的資料表看來,並沒有 PK 的存在。你可以增加一個 AutoInc 欄位當你的 PK,否則你將無法管理你的資料表。     建議你研究一下關聯資料庫與資料庫正規化,我發現你一 點概念都沒有喔 < src="http://sourceprovide.deepen.com.tw/K_Top/bp.gif">
豬頭寶寶
一般會員


發表:1
回覆:4
積分:1
註冊:2003-07-17

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-10-21 13:24:54 IP:210.200.xxx.xxx 未訂閱
引言: 對不起,我的中文不太行,我把問題重述一次 現在我的資料表裡面 是這樣子的情況 empno name. record. money. 001 giorgio anyway 100 001 giorgio anyway 100 002 delphi foo 300 002 delphi foo 200 ... ..... .... .... 如果我想更新或是刪除其中一筆特定資料,例如第二筆giorgio的資料 用update.. set.. where empno=001, name=giorgio一定也會影響到第一筆資料 刪除也是,有沒有辦法,能夠只刪除或更新其中特定一列, 像mysqlCC等等的工具,還有dbgrid不是都可以只針對特定的資料列作處理嗎? 這是怎麼辦到的?拜託大家了,謝謝。
這個應該用TABLE去做 而非使用QUERY哦^^
系統時間:2024-05-19 14:15:11
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!