服務器端 沒有做代碼
Conn: TADOConnection;
主表DS_main: TADODataSet;
從表DS_item: TADODataSet;
DSP_main: TDataSetProvider;關聯到DS_main
DSmain: TDataSource;
DS_MAIN與DS_itme建立了主從關系
設定了巢狀
========================
客戶端
DCOM: TDCOMConnection;
cds_main: TClientDataSet;
cds_mainorderID: TStringField;
cds_mainorderDate: TStringField;
cds_mainCustomer: TStringField;
cds_mainDS_item: TDataSetField;

添加按按鍵代碼
with dm.cds_main do
begin
append;
FieldByName('orderid').AsString:=e_djbh.Text;
FieldByName('orderdate').AsString:=formatdatetime('yyyy-mm-dd',d_rq.Date);
FieldByName('Customer').AsString:=e_kh.Text;
end;
現在不清楚細表資料要怎么樣添加。請搞手幫忙一下。謝謝
uj5u.com熱心網友回復:
加了主表,不一定要加細表。加細表時一定要有主表,通過外鍵關聯,明細表里要有一個欄位關聯主表的id。
刪主表時一定先把明細刪完了。
uj5u.com熱心網友回復:
資料庫端必須設定從表和主表的關系,設定外鍵。保證資料正確性uj5u.com熱心網友回復:
主表的AfterScroll事件中呼叫從表的Open sql=select * from 從表 where從表的關鍵欄位=主表的關鍵欄位uj5u.com熱心網友回復:
已經加上去了,資料庫也做了外鍵關聯
uj5u.com熱心網友回復:
1、定義一個事件方法,加入打開 從表的SQL代碼:procedure TShowOldChildFrm.SetKeyUp;
var SQL,ID,S:string;
L:integer;
begin
if Not DBGrid1.DataSource.DataSet.Eof then
begin
ID:=DataModule1.ClientDataSet1.FieldByName('身份證號').AsString;
DBGrid2.DataSource:=DataModule1.DataSource2;
SQL:='select * 'From 表名 where 老人身份證號='#39+ID+#39+' order by ''排序''';
DataModule1.ClientDataSet2.Active:=False;
DataModule1.ClientDataSet2.DataRequest(SQL);
DataModule1.ClientDataSet2.Active:=True;
end;
2、主表DBGrid的OnKeyUp和OnMouseUp事件中,加入SetKeyUp;
這樣, 就可以從容解決主從表資料顯示。
uj5u.com熱心網友回復:
以上有些代碼省略,僅供參考。uj5u.com熱心網友回復:
暈,直接在服務器上分別寫主從各自的保存的存盤程序,客戶端保存時候啟動實務,可維護性強,多寫幾行代碼而已。uj5u.com熱心網友回復:
客戶端將要保存的資料提交給服務端,再由服務端根據業務來寫SQL,將SQL用事物一次性提交即可。樓主 你應該學會自己寫SQL,而不是一個欄位對一個欄位的插入資料最后Post。
用Post的寫法是非常兒科的寫法,給人的感覺是非計算機專業的人做的。
如果你想學三層,你可以看看Remobject的Demo 體會下三層是如何作業的。
不能像lyhoo163給的代碼在客戶端寫SQL那樣不倫不類的三層。
uj5u.com熱心網友回復:
DataSnap的主從表實作,有二種方式:(1)“巢狀主從表”。在服務器端,通過二對ADOQuery和DataSetProvider,對應主從二表,并建立主從關系。 客戶端通過一對ClientDataSet對主從表,并通過主從DBGrid顯示出來。這種方式效率差。
(2)客戶端的二個ClientDataset控制元件之間建立主從關系,效率好,靈活性好。顯示和更新主從資料都比較方便。這種方式,在客戶端設計,比較靈活,不會像“巢狀主從表”如果不同客戶要建立10個主從表,服務器就要分別建立10個主從表相關的代碼(方法)。而客戶端主從表,只是在客戶端建立,服務器僅提供資料而已。
5樓上述代碼,僅是客戶端的代碼。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/93147.html
標籤:數據庫相關
下一篇:尋找二維碼源代碼
