本来此问题已经结贴了,却遇到新问题了.原问题:Form中有三个空间:DataTimePicker Button DbGrid希望得到的效果是同过Button的Click事件在DataTimePicker的内容,批量写入Access表中的某一字段列.
比如:在DataTimePicker中设定一个时间(2006-8-4),然后机型Button的Click事件后,得下表:编号 …… 时间
1 …… 2006-8-4
2 …… 2006-8-4
3 …… 2006-8-4答案:var Num,i,j :integer; Num :=1;
i :=0;
j :=100;
while i<j do
begin
adoquery1.Insert;
adoquery1.FieldByName('Num_no').AsString:=Inttostr(Num);
adoquery1.FieldByName('DT').AsString:=datetostr(DataTimePicker1.date);
adoquery1.Post;
Inc(Num);
Inc(i) ;
end;
但是如果我的表除了编号和时间外还有其他字段,比如货物名称那么应用以上语句就会出现:编号 …… 货物名称 时间
1 …… ××
2 …… ××
3 …… ××
4 …… 2006-8-4
5 …… 2006-8-4
6 …… 2006-8-4
7 …… 2006-8-4
103 …… 2006-8-4也就是从货物名称为空时才开始填入时间。
原来的表是:货物名称 时间
××
××
×× 那么请问如何写才能直接得到下表呢?货物名称 时间
×× 2006-8-4
×× 2006-8-4
×× 2006-8-4
比如:在DataTimePicker中设定一个时间(2006-8-4),然后机型Button的Click事件后,得下表:编号 …… 时间
1 …… 2006-8-4
2 …… 2006-8-4
3 …… 2006-8-4答案:var Num,i,j :integer; Num :=1;
i :=0;
j :=100;
while i<j do
begin
adoquery1.Insert;
adoquery1.FieldByName('Num_no').AsString:=Inttostr(Num);
adoquery1.FieldByName('DT').AsString:=datetostr(DataTimePicker1.date);
adoquery1.Post;
Inc(Num);
Inc(i) ;
end;
但是如果我的表除了编号和时间外还有其他字段,比如货物名称那么应用以上语句就会出现:编号 …… 货物名称 时间
1 …… ××
2 …… ××
3 …… ××
4 …… 2006-8-4
5 …… 2006-8-4
6 …… 2006-8-4
7 …… 2006-8-4
103 …… 2006-8-4也就是从货物名称为空时才开始填入时间。
原来的表是:货物名称 时间
××
××
×× 那么请问如何写才能直接得到下表呢?货物名称 时间
×× 2006-8-4
×× 2006-8-4
×× 2006-8-4
解决方案 »
- 大侠们,我是新手,想用access做数据库,那我应该用delphi的什么调用呢?
- IntraWeb使用TIWTemplateProcessorHTML的问题
- 还是多线程装树的问题?请各位DELPHI大师请进!ADO+SQL SERVER能否响应多线程?
- 怎么把TForm1作为形参传给datamodule中的一个procedure使用?
- 请教高手如何在应用程序中内嵌浏览器,实现网页内容与应用程序的交互。
- 高手进.!一段导出成XML文件的代码.但出错.!
- 大家来讨论一下,做CRM用什么开发方式,如何实施?
- 新手又有好菜送上,很嫩很嫩!!! (60分送給你)
- TList是什么,有何作用
- 一个自制控件问题
- 如何创建DLL文件
- 动态添加控件中关于事件的问题!!!!!!
i :=0;
j :=100;
while i<j do
begin
adoquery1.Insert;
adoquery1.FieldByName('编号').AsString:=Inttostr(Num);
adoquery1.FieldByName('货物名称').AsString:='××';
adoquery1.FieldByName('时间').AsString:=datetostr(DataTimePicker1.date);
adoquery1.Post;
Inc(Num);
Inc(i) ;
end;
进货与否 时间 货物名称
是 2006-8-4 ××
否 ×××
是 2006-8-4 ××1
begin
first;
while not eof do
begin
if not FieldByName('进货与否').asboolean then eixt;
if not (state in [dsinsert,dsedit]) then edit;
FieldByName('时间').asdatetime:=DataTimePicker1.date;
Post;
next;
end;
end;
with adoquery1 do
begin
first;
while not eof do
begin
if FieldByName('进货与否').asboolean then
begin
if not (state in [dsinsert,dsedit]) then edit;
FieldByName('时间').asdatetime:=DataTimePicker1.date;
Post;
end;
next;
end;
end;