全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1019
推到 Plurk!
推到 Facebook!

請問一下:我要如何抓BDE中的值到我DBGRID其中一個的欄位

尚未結案
suzukiyamaru
一般會員


發表:18
回覆:8
積分:5
註冊:2003-06-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-11-09 16:06:51 IP:218.167.xxx.xxx 未訂閱
請問一下大大我遇到的問題是 我要如何用QUERY抓的植來作我另一個資料表的編輯呢!! 例如:當我要作帳單資料系統時我必須要抓訂購單(資料表)中所有相同訂單編號的廠商明稱 當我把廠商名稱抓出來之後我該如何把抓出來的值丟到新的DBGRID中,把廠商的所抓的值加進去!! 例如:訂購單中有5加廠商名稱 但是我的帳單系統必須把這5個廠商名稱給抓出來在分別在DBGRID中有廠商名稱和工錢~~那我要如何把他的值丟給可編輯的TABLE 我用的是BDE 資料庫是ACCESS ~~~~請大大幫忙教授一下!!!程式作不太出來!!!
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-11-09 22:26:55 IP:61.231.xxx.xxx 未訂閱
前題是在你的table中必須有一個key值 直接在tabel上加 如在query中的key值中是querycompanyindex   在table1中的key值是tablecompanyindex
query1.first;
for i:=1 to 5 do 
begin 
    if locate('tablecompanyindex',querycompanyindex,[]) then
    begin
        table1.edit;
        table1.fieldbyname('廠商名稱').(型態)=query1.fieldbyname('廠商名稱').(型態);
        table1.fieldbyname('工錢').(型態)=query.fieldbyname('工錢').(型態);
        table1.post;
    end
    else
    break;
query1.next;
end;
「堅持」從洗馬桶做起 Aric
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-11-10 00:50:05 IP:63.84.xxx.xxx 未訂閱
您好!    您是使用Query元件的SQL語法, 小弟建議您可用Select Into的SQL語法將您查詢出的資料存入一個暫存檔, 因為Access并不支援暫存檔, 所以Select Into之后產生的資料表是一個真實的資料表, 那樣的話, 將DBGrid元件透過DataSource元件連接上此資料表, 即可對其進行修改, 完成修改之外, 再使用Update的 SQL語法將更新部分存入原始資料表中, 再用Drop的SQL語法將此查詢結果的資料表刪除.    參考看看!    ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟
suzukiyamaru
一般會員


發表:18
回覆:8
積分:5
註冊:2003-06-09

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-11-12 13:58:59 IP:218.167.xxx.xxx 未訂閱
請問一下大大 如在query1中的key值中是querycompanyindex 在table1中的key值是tablecompanyindex 這兩行要怎麼設定呢! 還是聽不太懂也!!可不可以舉個例子!!謝謝
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-11-14 09:32:20 IP:218.172.xxx.xxx 未訂閱
抱歉 小弟的key值的意思是兩個型態相同的欄位有相同的內容值或者 型態不同但轉型後內容值相同的欄位 就是說用 Locate(const KeyFields: String; const KeyValues: Variant; Options: TLocateOptions): Boolean; 這涵數目標值和搜尋值要相同才會回傳true如下的程式才會被執行 也就是說在要插入的目標中(dbgrid)要有一個指標才知到要插在那個record的 那一欄位下面紅色的部份是在找一個要插入的record             藍色是進行插入欄位的動作
query1.first;
for i:=1 to 5 do 
begin 
    if locate('tablecompanyindex',query1.fieldbyname('querycompanyindex').(型態),[]) then
    begin
        table1.edit;
        table1.fieldbyname('廠商名稱').(型態)=query1.fieldbyname('廠商名稱').(型態);
        table1.fieldbyname('工錢').(型態)=query.fieldbyname('工錢').(型態);
        table1.post;
    end
    else
    break;
query1.next;
end;    
「堅持」從洗馬桶做起 Aric
系統時間:2024-11-26 1:46:09
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!