QUERY增加记录出错,为什么?(100分)

  • 主题发起人 主题发起人 seaoy
  • 开始时间 开始时间
S

seaoy

Unregistered / Unconfirmed
GUEST, unregistred user!
代码如下:(第一次创建好数据库后增加记录没有问题,但再重新运行就不能增加了。)
procedure TForm1.Button2Click(Sender: TObject);
begin
Query1.DatabaseName :='JbData';
Query1.close;
Query1.Sql.Clear;
Query1.SQL.Add('INSERT INTO qq(Id,AA,BB)');
Query1.SQL.Add('Values(:Id,:AA,:BB)');
with Query1 do
begin
ParamByName('ID').AsInteger :=n;
ParamByName('AA').AsString := Edit1.Text ;
ParamByName('BB').AsString := edit2.Text ;
ExecSQL;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
ap:TStringList;
PathName,filename:string;
UserTb:TTable;
begin
FileName:='E:/';
PathName:='E:/qq.db';
ap:=TStringlist.Create;
Session.GetAliasNames(ap);
if (ap.IndexOf('JbData')=-1) then
begin
Session.AddStandardAlias('JbData',fileName,'Paradox');
Session.SaveConfigFile;
end;
Sessions.GetSessionNames(ap);
if not FileExists(PathName) then
begin
ap.Clear;
Session.GetTableNames('JbData','',False,False,ap);
if (ap.IndexOf('qq')=-1) then //判断表格是否存在
begin
UserTb:=TTable.Create(Self);
with UserTb do
begin
DatabaseName:='JbData';//预定义的别名数据库工作区名}
TableName:=PathName;//将定义的数据库名}
TableType:=ttParadox;
with FieldDefs do //数据库结构信息}
begin
Clear;
Add('ID',ftInteger,0,false);
Add('aa',ftstring,20,false);
Add('bb',ftstring,40,false);
end;
with IndexDefs do//{索引文件信息}
begin
Clear;
Add('Primary','Id',[ixPrimary,ixUnique]);
end;
CreateTable; //---- dynamically Create Table;
end;
UserTb.free;
end;
end;
ap.Free;
end;
 
TO:EVERYBODY
帮忙看看吧!
 
session1.Session.GetAliasNames(combobox1.items);
Session.GetTableNames(combobox1.text,'',False,False,listbox1.items);

//设定database1.name:='aaa'
database1.alias:=combobox1.text;
database1.connect:=true;
//设定query1.database:='aaa'
with query1 do
begin
end;

 
TO:ugvanxk
这样还是不行!
 

Similar threads

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