关于数据库的两个问题(50分)

  • 主题发起人 主题发起人 hotkey
  • 开始时间 开始时间
H

hotkey

Unregistered / Unconfirmed
GUEST, unregistred user!
1,query1.open以后,query1.recordcount=-1,问题何在?
2,如何将table,query的内容存储为文本文件?如何利用batchmove将
paradox表copy为dbase格式的表(.dbf,不预先生成!)?
 
query语句出错,或者是数据库出错。
 
关联的dbgrid中显示出正常的查询结果,但query1.recordcount=-1.
 
我也遇到过这样的问题,无法解释,后来我用SQL:
query.close;
query.sql.clear;
query.sql.add('select count(*) from table where field=''');
query.open;
while query.eof<>true do
sqlcount:=query.field[0].asinteger;

这样做一定没问题。
 
query1.recordcount=-1是属性设置,意思就是说把所有的你要取的RECORD都取过来,当然
你可以设置为10,那每次就取10条。
例如SELECT * FROM TEST 如果TEST表中有100条记录,query1.recordcount=-1时就把100条
记录都取来,query1.recordcount=10就先取10条记录。
 
补充说明:
1,同样的sql,两个表,一个正常,一个为-1;
选择不正常的表时,当dbgrid一屏能放下所有记录时,recordcount=记录数,
否则,recordcount=-1.
2,为何没有人回答第二个问题?
 
1,query1.open以后,query1.recordcount=-1,问题何在?
执行一下,query1.last,然后query1.first;再取query1.recordcount试试...
 

2.读出每个字段的值,编程写到文件中去...
不预先生成你就自动生成呗,用table的createtable方法,相应的建立每个字段,
然后batchmove一把.(如果paradox上建了主键什么东懂得,可能会失败)
 
尽量不要用recordcount

while not query1.eof do
beign
...
end;
 
Kent:
1,我现在就是用你写的方法处理的,只是想知道问题在哪;其他编程语言中也
存在这些不明不白的问题吗?会不会有一天惹上官司(导致用户的重要数据出错)?
2,通过batchmove将paradox表copy至ms sqlserver时,目标表不需任何的预
生成(包括自动生成);copy为.dbf时则不行(还是paradox格式).
 
多人接受答案了。
 
后退
顶部