如何从一个数据库去数据?(100分)

  • 主题发起人 主题发起人 moutocean
  • 开始时间 开始时间
M

moutocean

Unregistered / Unconfirmed
GUEST, unregistred user!
我是个DELPHI初学者
但我又有一个任务
我想从data的数据库中的几个表中去数据并赋给变量x.
 
100分,太冤枉了

用sql很容易搞定的说

query1:=TQuery.create;
query1.add('select mytable1.aaa from mytable1,mytabel2 '+
'where mytable1.bbb=mytable2.ccc');
query1.open;

x:=query1.fieldbyname('aaa').asstring;

 
table.tablename := "drv:/path/db.db";
table.findkey....
yourstring := table.fieldbyname.asstring;
yourint := table.fieldbyname.asinteger;
 
用yifeng的方法可以,用table控件也可,设好数据库,用table1.fieldbyname('fieldname').value,自己计算结果,如何
 
我的方法和以上诸位差不多,具体的实现方法:
Begin
With Table1 Do
Try
DisableControls;
Open;
First;
While Not Eof Do
Begin
[可加一条判断语句,进行选择读取]
x := FieldValues['待读取的字段名'];

next;
End; {*end of 数据库检索*}
Finally
Close;
EnableControls;
End;
End;
 
100分几个人分了吧,不过我希望你看看书再提问更好些。这分虽不是什么宝贝,
但花来容易,得来不易。有些人为提问题,再次注册一帐号,我觉得这没什么
意思,我倒认为答问题比较有意思。不过高手都曾是初学者,愿你成功!:)
 
同意menxin的说法,你需要从基础看起
 
前面各位说的都有道理,但别忘了,你得先将数据库和你的程序联系起来,办法很多,
最方便的是用BDE,选择好数据库类型,服务器名,数据库名,协议名...看一看书吧,不同数据库设置不一样。

 
也可以从TABLE中直接赋值:
如将字段xm的值赋给x
x:=table1.fieldbyname('xm').value;
注意变量和字段类型要一致
 
太容易了,不公平的说,每人10分好不好?
 
我同意xiaowind的意见,不过你是从几个表中的话,看来要用query
你还是说详细点吧
 
多人接受答案了。
 
后退
顶部