我有一个表里面有个日期类型定义为datetime(SQL SERVER的表)
我在DBGRID中调入表,输入 2003-4是系统报错,说无效的日期格式(有效的日期格式应该是如2003-4-4的格式)我想变相的输入2003-4就写了如下的代码procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char);
varbegin
if (Key = #13) then
with dbgrid1 do
begin
if (ADOQuery1.State in [dsEdit]) then
begin adoquery1.FieldbyName('日期').AsDateTime:=strtodate(DBGRID1.DataSource.DataSet.Fields[0].AsString+'-1');
//想通过后面加'-1'来使格式吻合日期类型
end;
ADOQuery1.Post;
end;
end;可是输入2003-4系统依旧报错,输入正确的格式2003-4-1,系统又提示2003-4-1-1
无效,天哪,什么问题呢?????????
我怎么样才能输入2003-4呢,前提是该字段还是datetime类型(变成字符型的固然简单,但不好检查输入的是否是日期类型)
我在DBGRID中调入表,输入 2003-4是系统报错,说无效的日期格式(有效的日期格式应该是如2003-4-4的格式)我想变相的输入2003-4就写了如下的代码procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char);
varbegin
if (Key = #13) then
with dbgrid1 do
begin
if (ADOQuery1.State in [dsEdit]) then
begin adoquery1.FieldbyName('日期').AsDateTime:=strtodate(DBGRID1.DataSource.DataSet.Fields[0].AsString+'-1');
//想通过后面加'-1'来使格式吻合日期类型
end;
ADOQuery1.Post;
end;
end;可是输入2003-4系统依旧报错,输入正确的格式2003-4-1,系统又提示2003-4-1-1
无效,天哪,什么问题呢?????????
我怎么样才能输入2003-4呢,前提是该字段还是datetime类型(变成字符型的固然简单,但不好检查输入的是否是日期类型)
解决方案 »
- 高分求助,关于获取网页数据
- cxgrid里面LookupComboBox属性的字段在输入时能否实现模糊搜索数据?
- Indy10中IDHTTP控件OnWorkBegin事件的疑问?
- oracle 和 mts(com+)的读不能锁定数据的事务问题
- D6安装问题
- 有关NMUDP组件的问题,请赐教!!
- 字符串操作,如何判断字符串'192. 16._2.1'不是ip?
- 有宁波的朋友吗?有一DELPHI开发的软件需修改和增加功能,需程序员,要求在宁波
- 北京地区花钱解决 用TClientSocket 和TServerSocket 传输大量数据丢包现象
- Delphi 怎样才可把文件夹内的文件全部删除
- 大家有熟悉IntraWeb的请提点意见,是否适合开发B/S?
- 快救救小女子吧,这个问题不解决就毕不了业了(关于一条记录的打印预览)
adoquery1.FieldbyName('日期').AsDateTime:=strtodate(DBGRID1.DataSource.DataSet.Fields[0].AsString+'-1');
改为
adoquery1.FieldbyName('日期').AsDateTime:=strtodate(DBGRID1.DataSource.DataSet.Fields[0].AsString+'''+'-1'+''');
如果要取一个月的头一天等,用日期函数