DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: luoj0902
今日帖子: 13
在线用户: 15
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 nestle_hcl (gigi) ★☆☆☆☆ -
注册会员
2003/5/5 18:09:54
标题:
高手帮我 浏览:1170
加入我的收藏
楼主: 我又有问题了!!
我现在遇到这样一个问题,不知道该怎么解决
我现在在录入界面上录入数据,我希望可以保存到两张表里,第一张表是保存全部数据,第二张表是保存一部分数据,而且从第三张表里取对应的几列,保存到第二张表里;我该怎么做呀!!
我已经把保存到第一张表的程序已经做好,给你们看一下;
----------------------------------------------
-
作者:
男 nestle_hcl (gigi) ★☆☆☆☆ -
注册会员
2003/5/5 18:17:24
1楼: procedure THrelates.suiButton1Click(Sender: TObject);
var
   tempADOQuery: TADOQuery;
   iBH: Integer;
begin
      // 找最大编号
      tempADOQuery := TADOQuery.Create(nil);
      with tempADOQuery do
      begin
          Connection :=ADOgzrelate.Connection;
          SQL.Text := 'Select Max(rno) as MaxID From ' + ADOgzrelate.TableName;
          Open;
          if Eof then
             iBH := 1
          else
             iBH := FieldByName('MaxID').AsInteger + 1;  // 这里要+1
             Close;
      end;
  tempADOQuery.Free;
  ADOgzrelate.open;  //打开ADOczrelate//
  ADOgzrelate.Append;
  ADOgzrelate.FieldByName('rno').Value:= iBH;
  ADOgzrelate.FieldByName('rgrade').Value:=ComboBox5.Text;
  ADOgzrelate.FieldByName('rclass').Value:=ComboBox6.Text;
  ADOgzrelate.FieldByName('rcourse').Value:=ComboBox7.Text;
  ADOgzrelate.FieldByName('rteacher').Value:=ComboBox8.Text;
  ADOgzrelate.post;
end;


end.


这个就是我做的!我希望从enewcourse表中取ncount和nlevel两列值,这两列值必须是这样的ngrade:=combobox5.text;nclass:=combobox6.text;ncourse:=combobox7.text;
然后保存到第三张表;
  adotable1.FieldByName('hgrade').Value:=ComboBox5.Text;
  adotable1.FieldByName('hclass').Value:=ComboBox6.Text;
  adotable1.FieldByName('hcourse').Value:=ComboBox7.Text;
  adotable1.FieldByName('hteacher').Value:=ComboBox8.Text;
  adotable1.FieldByName('hcount').Value:=取出来的值;
  adotable1.FieldByName('hlevel').Value:=取出来的值;


谁帮帮我呀!

----------------------------------------------
-
作者:
男 nestle_hcl (gigi) ★☆☆☆☆ -
注册会员
2003/5/5 18:39:42
2楼: procedure THrelates.suiButton1Click(Sender: TObject);
var
   tempADOQuery: TADOQuery;
   iBH: Integer;
begin
      // 找最大编号
      tempADOQuery := TADOQuery.Create(nil);
      with tempADOQuery do
      begin
          Connection :=ADOgzrelate.Connection;
          SQL.Text := 'Select Max(rno) as MaxID From ' + ADOgzrelate.TableName;
          Open;
          if Eof then
             iBH := 1
          else
             iBH := FieldByName('MaxID').AsInteger + 1;  // 这里要+1
             Close;
      end;
  ADOgzrelate.open;  //打开ADOczrelate//
  ADOgzrelate.Append;
  ADOgzrelate.FieldByName('rno').Value:= iBH;
  ADOgzrelate.FieldByName('rgrade').Value:=ComboBox5.Text;
  ADOgzrelate.FieldByName('rclass').Value:=ComboBox6.Text;
  ADOgzrelate.FieldByName('rcourse').Value:=ComboBox7.Text;
  ADOgzrelate.FieldByName('rteacher').Value:=ComboBox8.Text;
  ADOgzrelate.post;
  tempadoquery.SQL.Clear;
  tempadoquery.SQL.Add('select ncount as count,nlevel as level from enewcourse where ngrade=''+combobox5.text+'' and nclass=''+combobox6.text+'' and ncourse=''+combobox7.text+'');
  adotable1.Open;
  adotable1.Append;
  adotable1.FieldByName('ngrade').Value:=ComboBox5.Text;
  adotable1.FieldByName('nclass').Value:=ComboBox6.Text;
  adotable1.FieldByName('ncourse').Value:=ComboBox7.Text;
  adotable1.FieldByName('nteacher').Value:=ComboBox8.Text;
  adotable1.FieldByName('ncount').Value:=tempadoquery.FieldValues['count'];
  adotable1.FieldByName('nlevel').Value:=tempadoquery.FieldValues['level'];
  adotable1.Post;
  tempADOQuery.Free;
  end;


end.




这个是我自己想的,请各位看一下可以吗?但我运行的时候为什么老是不行呀!说是count not found
----------------------------------------------
-
作者:
男 nestle_hcl (gigi) ★☆☆☆☆ -
注册会员
2003/5/5 19:16:20
3楼: 问题已经解决,我自己搞出来的!
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v2.1 版权所有 页面执行35.15625毫秒 RSS