数据库数据追加删除问题 (100分)

  • 主题发起人 luosheng
  • 开始时间
L

luosheng

Unregistered / Unconfirmed
GUEST, unregistred user!
对数据库进行追加(删除)记录的操作:使用dbgrid,要求:dbgrid在运行时不显示数据库中的
数据(字段名要),能一次就行多条记录的追加,删除。同时判断l1 l2 l3 为非空
表结构为 l1 l2(文本) ;l3 l4 l5 l6 l7 l8(float)
 
5555555555555,没人会回答吗??难道dbgrid不行吗?有没有去他方法啊??分不够可以加啊
 
dbgrid在运行时不显示数据库中的
数据(字段名要): 查询一条空的记录就能显示出字段名。
一次就行多条记录的追加可以用循环控制啊。
判断的问题自己看dbGrid中fields的属性吧
 
用TQuery + TUpdateSQL
 
to bill_max:dbgrid的fields属性判断没有啊!
to delphi:能够告诉我具体怎么做吗?
 
用Query与DBGrid相连,你想怎么样就怎么样,你的问题只是小意思。
 
给点代码好吗?
 
用循环控制
用query与Dbgrid 连接,
最后在总的commit;
 
看你的问题有点糊涂
 
同意以上朋友的意见。我也碰到过同样的问题。
 
帮我看看代码:
procedure Tfrm_input_zg.BitBtn1Click(Sender: TObject);
Var
i:Integer;
begin
ADOQuery1.Open;
if DBGrid1.SelectedRows.Count>0 then
begin
for i:=0 to DBGrid1.SelectedRows.Count+1 do
begin
if ((DBGrid1.Fields[0].AsString<>Null) and (DBGrid1.Fields[1].AsString<>Null)
and (DBGrid1.Fields[2].AsFloat<>0)and (DBGrid1.Fields[8].AsDateTime<>null)) then
begin
ADOQuery1.Append ;
ADOQuery1.Fields[1].AsString:=DBGrid1.Fields[1].AsString;
ADOQuery1.Fields[2].AsString:=DBGrid1.Fields[2].AsString;
ADOQuery1.Fields[3].AsFloat:=DBGrid1.Fields[3].AsFloat;
ADOQuery1.Fields[5].AsFloat:=DBGrid1.Fields[4].AsFloat;
ADOQuery1.Fields[4].AsFloat:=DBGrid1.Fields[5].AsFloat;
ADOQuery1.Fields[6].AsFloat:=DBGrid1.Fields[6].AsFloat;
ADOQuery1.Fields[7].AsFloat:=DBGrid1.Fields[7].AsFloat;
ADOQuery1.Fields[8].AsDateTime:=DBgrid1.Fields[8].AsDateTime;
ADOQuery1.Post;
MessageBox(0,'输入成功','成功',MB_OK);
end
else
begin
MessageBox(0,'编号,姓名与基本工资不能为空,请输入','错误',MB_OK);
Break;
end
end
end
else
MessageBox(0,'请输入数据','错误',MB_OK);
end;
在里面输入数据后,就是追加不进去,说没输入数据。DBGrid1已经设置了dgEditing
为true;各位大虾帮我改一下好吗?
 
ADO的设定呢?
 
把Query的CacheUpdate打開,
更新完數據以後再用ApplyUpdate保存就快很多了
 
要怎么设定啊?我设定的是select * from zgxx where xm=null(使dbgrid显示字段名不显示
数据)其他都好了
我现在是输入的数据不提交啊,不管什么输入都是没有输入数据.
能告诉我怎么控制dbgrid指向某一行吗?
 
运行时不显示数据,select * from xxx where id = 不可能

能一次就行多条记录的追加,删除,用批处理方式啊。
同时判断l1 l2 l3 为非空,你自己判断数据集啊.
 
我一般用ApplyUpdates方法将缓存中的数据写入数据庫的。
DataSet.Database.ApplyUpdate(DataSet);
 
能帮我改上面的代码吗??
分不够可以再加!
 
你的代码写的很不对头唉...... Dbgrid 的数据集是什么?
 
怎么说?
 
luosheng

这是一个完整的例程。用IBLocal下的PROJECT表。
 
顶部