zoukankan      html  css  js  c++  java
  • Delphi中用ADOQuery实现主从表的例子(转)


        在sql server 的northwide 中建立主表:

           create table sell_main( sell_id char(10),cust_name char(10) Primary key(sell_id) )

           go

        建立从表:

           create table sell_item( sell_id char(10),inv char(10) ,amt float,qty float Primary key(sell_id,inv) )

           go

        首先,要注意以下设置

            1.要注意报从表qrydetail设置,批保存开式: 即:locktype= batchoptimistic ,cursor=keyset,cursorlocation =cluseclient

            2.代码:

               procedure TForm1.FormCreate(Sender: TObject);
               begin
                  qrymain.Close;
                  qrydetail.Close;
                  qrymain.SQL.Add(' select *   from   sell_main)   ;
                  qrydetail.SQL.add('select * from sell_item where sell_id = :sell_id')  ;
                  qrymain.Open;
                  qrydetail.Open;  
               end;

           3.代码:

              procedure TForm1.qrymainAfterScroll(DataSet: TDataSet);
              begin
                 qrydetail.Close;
                 qrydetail.Parameters.ParamByName('sell_ID').Value := qrymain.fieldbyname('sell_id').value;
                 qrydetail.Open;

              end;

        以上就是主要的设置。还有注意主从表的保存问题:

        主表不要用批处理,直接保存。把ltBatchOptimistic去掉。明细表用批处理。 

        保存时先保存明细表,再保存主表即可。

  • 相关阅读:
    自动装箱和==和equals
    4.1 java 类加载器
    23种设计模式
    ionic2打包 配置路径
    ionic2 native app 更新用户头像暨文件操作
    Spring Security三种认证
    maven设置本地仓库地址和设置国内镜像
    ps选框工具全解
    最长公共子序列问题
    内部排序算法的稳定性
  • 原文地址:https://www.cnblogs.com/bingege/p/1698197.html
Copyright © 2011-2022 走看看