麻烦检查一下错误,十分感谢!

qzmp 2003-02-27 10:14:51
procedure TForm2.Button8Click(Sender: TObject);
var
bname:string;
begin
if table1.RecordCount>0 then
begin
table1.First;
while not table1.eof do
begin
bname:=table1.fieldbyname('code').asstring+table1.fieldbyname('name').asstring;
query1.databasename:='dd';
query1.Close;
query1.SQL.clear;
query1.sql.Add('select * from sysobjects where name=:q1');
query1.ParamByName('q1').AsString:=bname;
query1.execsql;
if query1.isempty then
begin
query1.Close;
query1.sql.Clear;
query1.sql.Add('create table :q2 ([rq] [INT] NOT NULL)');
query1.ParamByName('q2').asstring:=bname;
query1.Execsql;
table1.moveby(1);
end
else
application.MessageBox('资料已经存在!','提示窗口',mb_iconinformation+mb_ok);
table1.moveby(1);
end;
table1.first;
end;
end;
...全文
80 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
jeff 2003-03-02
  • 打赏
  • 举报
回复
哪里有错误?@p1在哪里?是哪一行?
qzmp 2003-03-01
  • 打赏
  • 举报
回复
改过来了还是不行提示“@p1”附近有语法错误,这是怎么回事?
delphiyesgood 2003-02-28
  • 打赏
  • 举报
回复
query.open 试试
vitamin_ok 2003-02-28
  • 打赏
  • 举报
回复
Query1.Parameters.ParamByName('q2').Value := bname;

Query1.open 这样才能返回数据集。
Query1.ExecSQL 只是执行sql语句,不返回数据集的
seatu 2003-02-28
  • 打赏
  • 举报
回复
query1.execsql 改为query1.OPen
query1.execsql 只执行Sql,不返回记录集
outer2000 2003-02-28
  • 打赏
  • 举报
回复
query1.execsql;一行错误。
改为:query1.OPen;
zhang21cnboy 2003-02-28
  • 打赏
  • 举报
回复
我真的不会!
weitao999 2003-02-28
  • 打赏
  • 举报
回复
query1.execsql;一行错误。
改为:query1.OPen;
xuejinlong 2003-02-28
  • 打赏
  • 举报
回复
procedure TForm2.Button8Click(Sender: TObject);
var
bname:string;
begin
if table1.RecordCount>0 then
begin
table1.First;
while not table1.eof do
begin
bname:=table1.fieldbyname('code').asstring+table1.fieldbyname('name').asstring;
query1.databasename:='dd';
query1.Close;
query1.SQL.clear;
query1.sql.Add('select * from sysobjects where name=:q1');
query1.ParamByName('q1').AsString:=bname;


// query1.execsql; 错误
query1.open;


if query1.isempty then
begin
query1.Close;
query1.sql.Clear;
query1.sql.Add('create table :q2 ([rq] [INT] NOT NULL)');
query1.ParamByName('q2').asstring:=bname;
query1.Execsql;
table1.moveby(1);
end
else
application.MessageBox('资料已经存在!','提示窗口',mb_iconinformation+mb_ok);
table1.moveby(1);
end;
table1.first;
end;
end;
anh 2003-02-28
  • 打赏
  • 举报
回复
outer2000(天外流星) 已经给你答案了。

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧