我正在做一个数据库的题目,有几个小问题(具体内容在里面),高手请进,给点儿意见!很急的 (100分)

  • 主题发起人 主题发起人 Imfish
  • 开始时间 开始时间
I

Imfish

Unregistered / Unconfirmed
GUEST, unregistred user!
1、现有一个Access97数据库,由于需和硬件相连获得数据(是随机的),
问:对此库操作会引起死锁等问题吗?有什么好的方法可以将其中数据取出来而不会造成影响?

2、由于操作是将此库中数据通过拔号上传所以时间太长,我现在的做法是这样的:
我们新建一个数据库,先在本地将数据导入该库中(目的是“时间短”)
repeat
adoquery2.Append;
adoquery2.fieldbyname('BH').asinteger:=adoquery1.FieldByName('bh').asinteger;
……
……
……
adoquery1.next;
until adoquery1.eof=true;
以上做法也很慢
问:导入的方法有更好的吗,请各位指点。

3、我们将新建的库通过拔号发到sql库中也用2中的方法行吗?

4、如有一个时间字段怎样比较时间的先后?(用代码说明)

我是一个莱鸟
请大虾们指点:如有原码可以说明问题最好。
 
大虾们提提意见呀,谢谢
 
针对问题二:
可以用SQL语句,批量导入。
例如:
sqlstr:='insert into 目标TableName select * from 源TableName in "%s" WHERE ((源TableName.FieldName) Not In (SELECT FieldName FROM 目标TableName ))';
//目标TableName 为当前打开的TABLE。
ADOQuery.Close;
ADOQuery.SQL.Text:=Format(sqlstr,[MDBSource]);//MDBSource为源MDB数据库的路径 如:c:/test.mdb
ADOQuery.ExecSQL;
 
现有一个Access97数据库,由于需和硬件相连获得数据(是随机的),
问:对此库操作会引起死锁等问题吗?有什么好的方法可以将其中数据取出来而不会造成影响?

Access这种库如果多客户端操作是可能死锁的,至少也是个冲突吧.
 
帮你UP一下!
 
问题1:ACCESS数据库是个人数据库,不自动支持并发操作。所以有可能死锁。办法是用程序
控制独占的问题;
问题2:用SQL语句的话只能是在同一种数据库的不同表中插入。但是可以用一些专用的工具
或者是自己写程序来做。还是很快的。前者如DELPHI的DATABUMP工具,后者如PB的DATAPIPE,
都很快。
问题4:DATAFIELD1<DATAFIELD2,时间字段实际上是个DOUBLE数,可以直接比较大小,即可
得到先后。

 
我用DATABUMP做了一个,如果需要,给我个E-MAIL,我给你发过去.
 
To hk_zcp:
我的妹儿;huangyi03590358@sina.com
谢谢
 
to hk_zop:
请给我也发一份好吗?谢谢。hilove@163.com
 
我发过,可给我退回来了!
 
TOhk_zcp :
不管发过没发过,这个问题我已经解决了,都给分
 
时间可以直接比较就可以了
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部