SQL查询的问题。(200分)

  • 主题发起人 主题发起人 nhjoy
  • 开始时间 开始时间
N

nhjoy

Unregistered / Unconfirmed
GUEST, unregistred user!
我的一个程序原来是用PARADOX数据库的。
由于经常丢失数据所以转用ACCESS,用ADO连接
但转换后原来能用的查询语句都不能用了。
出现以下提示。
Project porject.exe raised exception class EAccessviolation with
message'Access violaion at address 1B0414B1 in module' msjet40.dll'
Read of address 0005242E'.
process stopped,use step or run to continuc
各位大侠帮忙看看是什么问题如何解决。
 
出现了sql语法不兼容的现象,应重新检查所有的sql语句
 
不可能原来的都不能用了吧
 
你把SQL语句放到delphi本身带的SQL exploer中测试,如果能够执行,说明是程序其他
地方有问题,如果不能执行,它会提示你是什么错误,你试的查一查
 
如果用标准的参数传递,当然转化不会有太大问题。
比如日期。其它差不多,应该可以通用。
 
先分步跟踪,定位到引起错误的地方,才能确定具体原因,SQL不兼容的可能性大
 
不能用SQL EXPLOER测试因为没数据库别名,
只是用ADO连接。
原来用BDE 用PARADOX时全部可以用的。
语句没问题;
最简单的。
update table1 set fields=aaa where fields2=bbb
也不行
 
建议你用BDE,要不你修改的地方多了。
不过你写的语句在Access里面肯定没问题的。
 
谢谢你的的建议我原来就是用BDE的就是因为
PARADOX数据库不好用丢失数据我才转用ACCESS的
ADO是现在比较方便的连接嘛
所以转换一下啦修改多无所谓最重要的是数据不再丢失主从表保存的时候没有问题就行了
那里有ADO+ACCESS用主从表的例子。
 
PARADOX数据库不好用丢失数据??应该查明原因,PARADOX没有这种情况,除非你不想用它。
用的好好的,自找麻烦?
 
update table1 set fields=aaa where fields2=bbb
本身直接放在DELPHI ADOQUERY的SQL属性中是不对的,清偿试
update table1 set fields=:aa where fields2=:bb;
adoquery.parameter[0].value:='fffff';
adoquery.parameter[2].value:='fffff';看看?


 
[8D][:(][^][?][8D][:)]
 
PARADOX数据库就是有问题。
我试过直接用DATABASE DESKTOP在数据库里做也会突然丢失索引或者数据不能增加。
现在来讲用ACCESS应该有点好处吧,
再说以后过渡到SQL SERVER也方便,
各位大侠能不能讲讲如何解决上面的问题。
 
多人接受答案了。
 
后退
顶部