DBGrid的DataSource的DataSet一定要Open才可以插入的吧、、、 不想返回记录可以这样 例如 ADOQuery1.Close; ADOQuery1.Sql.clear; ADOQuery1.Sql.add('select * from Employee where 1 <> 1'); ADOQuery1.Open然后就可以 ADOQuery1.insert了。。再ADOQuery1.fields[0].Value:='xxx' ADOQuery1.post//保存
添加记录之前对DBGrid进行判断 if DBGrid1.DataSource.DataSet.Active = False then begin with DBGrid1.DataSource.DataSet do begin close; sql.clear; sql.text := 'select top 0 * from table'; open; end; end; 然后后面写添加数据的代码就可以了
不想返回记录可以这样
例如
ADOQuery1.Close;
ADOQuery1.Sql.clear;
ADOQuery1.Sql.add('select * from Employee where 1 <> 1');
ADOQuery1.Open然后就可以
ADOQuery1.insert了。。再ADOQuery1.fields[0].Value:='xxx'
ADOQuery1.post//保存
if DBGrid1.DataSource.DataSet.Active = False then
begin
with DBGrid1.DataSource.DataSet do
begin
close; sql.clear;
sql.text := 'select top 0 * from table';
open;
end;
end;
然后后面写添加数据的代码就可以了