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

多表编辑问题如何解决?

缺席
e271828
一般會員


發表:9
回覆:8
積分:3
註冊:2007-06-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-06-05 13:48:44 IP:219.136.xxx.xxx 訂閱
多表编辑问题如何解决?
例如有这样SQL:
select * from a,b where a.id=b.id
用ADOQUERY查出后,我想要APPEND,似乎可以成功的,但想要EDIT,竟不成功,如果要DELETE,不知后果如何。
遇上这种问题请问该如何处理数据库的设计?
ko
資深會員


發表:28
回覆:785
積分:444
註冊:2002-08-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-06-05 18:19:52 IP:61.30.xxx.xxx 訂閱
多表查詢?
你是指在JOIN之後顯示在DBGRID的資料如何做異動嘛?
如果是你必須指定你要異動的TABLE以及要變動的FEILD
------
======================
昏睡~
不昏睡~
不由昏睡~
e271828
一般會員


發表:9
回覆:8
積分:3
註冊:2007-06-05

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-06-12 15:45:39 IP:218.19.xxx.xxx 訂閱
ADOQuery1.Open;
ADOQuery1.Recordset.Properties.Item['unique table'].Value:='a';
是这样吗?这样对ACCESS还可APPEND和DELETE,但不可EDIT
对SQLSERVER则仍不可以DELETE和EDIT,甚至不可APPEND
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-06-13 01:04:30 IP:211.22.xxx.xxx 未訂閱
ADOQuery1.Open; // 開啟資料集
if ( ADOQuery.RecordCount > 0 ) then
begin
ADOQuery1.Edit;
ADOQuery1.Recordset.Properties.Item['unique table'].Value:='a'; //你的資料集沒有移動,這樣等於要直接改第一筆,最好在編輯資料錄之前看看有沒有抓到資料!
ADOQuery1.Post;
end;
ADOQuery1.Close;

建議看一下資料庫的書籍,以及ADO物件是怎樣操作MSSQL伺服器。
e271828
一般會員


發表:9
回覆:8
積分:3
註冊:2007-06-05

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-06-13 13:28:39 IP:218.19.xxx.xxx 訂閱
由于APPEND时出错
对于SQLSERVER2000,用触发器确实搞踮了!!!
但是对于ACCESS2000,还未有!!!
CREATE TRIGGER [asas] ON [dbo].[bbb]
INSTEAD OF INSERT
AS
select * ,0 as ifs into #www from inserted
update #www set #www.ifs=1 where #www.id in (select id from bbb)
if exists(select * from #www where #www.ifs=0)
insert into bbb select * from inserted where inserted.id in (select id from #www where #www.ifs=0)
drop table #www
ko
資深會員


發表:28
回覆:785
積分:444
註冊:2002-08-14

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-06-13 17:45:34 IP:61.30.xxx.xxx 訂閱
e271828 您好:
您的意思,我實在看不懂!! 請再加以詮釋一下~

===================引 用 e271828 文 章===================
由于APPEND时出错
对于SQLSERVER2000,用触发器确实搞踮了!!!
但是对于ACCESS2000,还未有!!!
CREATE?TRIGGER?[asas]?ON?[dbo].[bbb]?
INSTEAD?OF??INSERT
AS
select?*?,0?as?ifs??into?#www?from?inserted
update?#www?set?#www.ifs=1?where?#www.id?in?(select?id?from?bbb)
if?exists(select?*?from?#www??where?#www.ifs=0)
insert?into??bbb??select?*?from?inserted??where?inserted.id?in?(select?id?from?#www??where?#www.ifs=0)
drop?table?#www
------
======================
昏睡~
不昏睡~
不由昏睡~
系統時間:2024-05-19 4:37:07
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!