感谢各位的解答,在检查之后更换了名字,又更换了语句的位置,程序能正常运行了,maskedit里面设置的是时间格式"!99/99/00;1;_",数据库里面的相应字段设置的是文本格式.按照时间格式输入后,点提交没有报错,但数据库相应日期字段里除了'_ _'这个标识符却没有任何数据? 我把我的代码发上来请各位指点一下!第一个窗口代码 procedure TForm2.Button3Click(Sender: TObject); var sqlstr:string; begin sqlstr:='select * from list where 字段名 = false'; form1.adoquery1.Close; form1.adoquery1.SQL.Clear; form1.adoquery1.SQL.Add(sqlstr); form1.adoquery1.Open; form7.DBEdit1.DataSource:=form1.DataSource1; form7.DBEdit1.DataField:='Field1'; form7.DBEdit2.DataSource:=form1.DataSource1; form7.DBEdit2.DataField:='Field2'; form7.DBEdit3.DataSource:=form1.DataSource1; form7.DBEdit3.DataField:='Field3'; form7.DBEdit4.DataSource:=form1.DataSource1; form7.DBEdit4.DataField:='Field4'; form7.DBEdit5.DataSource:=form1.DataSource1; form7.DBEdit5.DataField:='Field5'; form7.DBEdit6.DataSource:=form1.DataSource1; form7.DBEdit6.DataField:='Field6'; form7.DBEdit7.DataSource:=form1.DataSource1; form7.DBEdit7.DataField:='Field7'; form7.DBEdit8.DataSource:=form1.DataSource1; form7.DBEdit8.DataField:='Field8'; form7.DBEdit9.DataSource:=form1.DataSource1; form7.DBEdit9.DataField:='Field9'; form7.DBEdit10.DataSource:=form1.DataSource1; form7.DBEdit10.DataField:='Field10'; form7.DBEdit11.DataSource:=form1.DataSource1; form7.DBEdit11.DataField:='Field11'; form7.DBEdit12.DataSource:=form1.DataSource1; form7.DBEdit12.DataField:='Field12'; form7.DBEdit13.DataSource:=form1.DataSource1; form7.DBEdit13.DataField:='Field13'; form7.DBEdit14.DataSource:=form1.DataSource1; form7.DBEdit14.DataField:='Field14';
form7.DBEdit16.DataSource:=form1.DataSource1; form7.DBEdit16.DataField:='Field16'; form1.ADOQuery1.Append; form1.ADOQuery1.FieldByName('Field15').AsString := form7.MaskEdit1.Text; form2.Close; form7.Show; end;end.接下来的一个窗口,是输入数据后提交的procedure TForm7.Button2Click(Sender: TObject); begin if messagedlg('确定提交吗?',mtconfirmation,[mbyes,mbno],0)=mryes then begin form1.ADOQuery1.Post; form1.ADOQuery1.Append; end
end;
procedure TForm1.Button2Click(Sender: TObject); begin showmessage(MaskEdit1.Text); showmessage(FormatDateTime('yyyy-mm-dd',strtodate(MaskEdit1.Text))); end;procedure TForm1.FormCreate(Sender: TObject); begin MaskEdit1.EditMask := '!0000/99/99'; end;
你的库里有没有date这个字段?---建议,date是标准函数,最好不要用在字段上。
还有就可能是adoquery1有错,把它删了,重加一个进去看看。
我把我的代码发上来请各位指点一下!第一个窗口代码
procedure TForm2.Button3Click(Sender: TObject);
var
sqlstr:string;
begin sqlstr:='select * from list where 字段名 = false';
form1.adoquery1.Close;
form1.adoquery1.SQL.Clear;
form1.adoquery1.SQL.Add(sqlstr);
form1.adoquery1.Open; form7.DBEdit1.DataSource:=form1.DataSource1;
form7.DBEdit1.DataField:='Field1'; form7.DBEdit2.DataSource:=form1.DataSource1;
form7.DBEdit2.DataField:='Field2'; form7.DBEdit3.DataSource:=form1.DataSource1;
form7.DBEdit3.DataField:='Field3'; form7.DBEdit4.DataSource:=form1.DataSource1;
form7.DBEdit4.DataField:='Field4'; form7.DBEdit5.DataSource:=form1.DataSource1;
form7.DBEdit5.DataField:='Field5'; form7.DBEdit6.DataSource:=form1.DataSource1;
form7.DBEdit6.DataField:='Field6'; form7.DBEdit7.DataSource:=form1.DataSource1;
form7.DBEdit7.DataField:='Field7'; form7.DBEdit8.DataSource:=form1.DataSource1;
form7.DBEdit8.DataField:='Field8'; form7.DBEdit9.DataSource:=form1.DataSource1;
form7.DBEdit9.DataField:='Field9'; form7.DBEdit10.DataSource:=form1.DataSource1;
form7.DBEdit10.DataField:='Field10'; form7.DBEdit11.DataSource:=form1.DataSource1;
form7.DBEdit11.DataField:='Field11'; form7.DBEdit12.DataSource:=form1.DataSource1;
form7.DBEdit12.DataField:='Field12'; form7.DBEdit13.DataSource:=form1.DataSource1;
form7.DBEdit13.DataField:='Field13'; form7.DBEdit14.DataSource:=form1.DataSource1;
form7.DBEdit14.DataField:='Field14';
form7.DBEdit16.DataSource:=form1.DataSource1;
form7.DBEdit16.DataField:='Field16';
form1.ADOQuery1.Append;
form1.ADOQuery1.FieldByName('Field15').AsString := form7.MaskEdit1.Text; form2.Close;
form7.Show;
end;end.接下来的一个窗口,是输入数据后提交的procedure TForm7.Button2Click(Sender: TObject);
begin
if
messagedlg('确定提交吗?',mtconfirmation,[mbyes,mbno],0)=mryes then
begin
form1.ADOQuery1.Post;
form1.ADOQuery1.Append;
end
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
showmessage(MaskEdit1.Text);
showmessage(FormatDateTime('yyyy-mm-dd',strtodate(MaskEdit1.Text)));
end;procedure TForm1.FormCreate(Sender: TObject);
begin
MaskEdit1.EditMask := '!0000/99/99';
end;