[SQL脚本在DELPHI中运行的出现的问题~~急~~!](搜索老帖子,得到部分答案)
想通过DELPHI程序安装数据库,用其他的工作制作,看了好久还是不会,找不到好的说明,非常汗~~!
最后好不容易想起了DELPHI 中的Query可以执行
代码如下
ADOQuery.paramCheck := false;
with aa do
begin
close;
sql.Clear;
sql.LoadFromFile('demo3.txt');
ExecSQL;
end;
出现错误提示为
第四行GO附近有语法错误,脚本本身是从SQL里生成的,在查询分析器里运行也正常
那位给我说这是为什么呀。。
我的脚本需要贴出来吗?
比较大。。
问题点数:40、回复次数:8Top
1 楼keiy()回复于 2006-03-15 20:01:51 得分 10
delphi的TQuery只能执行单条的SQL命令,不能执行角本Top
2 楼zhangl_cn(和尚-修行)回复于 2006-03-15 20:38:41 得分 10
close;
sql.Clear;
sql.LoadFromFile('demo3.txt');
showmessage(sql.text); //这里先show一下看看是不是和你在查询分析器里执行的脚本一样
ExecSQL;Top
3 楼mrzj(mrzj)回复于 2006-03-15 22:03:15 得分 10
GO语句的问题。
正确的做法是不用ado,用sql本身提供的isql命令,用类似winexec去执行isql。Top
4 楼scy2510(学计算机的农民)回复于 2006-03-16 18:02:56 得分 0
mrzj(mrzj) ( ) 信誉:100
命令该如何使用呢
关键是代码该扎个写 ,谢谢~~!
Top
5 楼scy2510(学计算机的农民)回复于 2006-03-16 18:10:17 得分 0
////////////////
用isql命令执行就可以了,假如说你的sql文件是test.sql
执行命令“isql -U sa -P -S zk -d tempdb -i "E:\zk\test.sql"”就可以
////////////////
上面这句是什么意思
tempdb
是必须先建好数据库吗?
命令只是执行除建数据库以外的操作吗?
Top
6 楼whbo(王红波(年轻人,要有所作为))回复于 2006-03-16 20:13:34 得分 5
你把脚本中的go去掉
用go阁开,表示一个新的批处理,对于没返回数据集的脚本,你把go直接去掉,应该可以执行了Top
7 楼scy2510(学计算机的农民)回复于 2006-03-17 09:58:50 得分 0
搞定了,在ADO中执行的,我没有做成功
但是可以使用DELPHI调用批处理文件
批处中写一个命令就可以了
isql -S"servername" -U"useid" -P"pwd" -i"demo3.sql
Top
8 楼sunlight539(阿不)回复于 2006-03-17 14:37:22 得分 5
TQuery中的SQL语句不能加GOTop




