|
| » 首页 » 电脑_数码 » 编程 » 用Delphi向数据库中插入时间 |
用Delphi向数据库中插入时间 |
|
var a:string; begin a:='2005-6-14'; ADOQuery1.Close; ADOQuery1.SQL.Clear; ADoQuery1.SQL.Add('Insert into 测试表(时间) values('+FormatDateTime('yyyy-mm-dd', StrToDate(Edit2.Text))+')'); ADOQuery1.ExecSQL; ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('select * from 测试表'); ADOQuery1.Open; end; 然后显示的时间是:1905-6-9 这是为什么阿? var a:string; begin a:='2005-6-14'; ADOQuery1.Close; ADOQuery1.SQL.Clear; ADoQuery1.SQL.Add('Insert into 测试表(时间) values('+FormatDateTime('yyyy''-''mm''-''dd', StrToDate(a))+')'); ADOQuery1.ExecSQL; ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('select * from 测试表'); ADOQuery1.Open; end; 测试表的时间用的是datetime类型 |
![]() |
|
|
ADoQuery1.SQL.Add('Insert into 测试表(时间) values('''+FormatDateTime('yyyy-mm-dd', StrToDate(a))+''')'); 注意那些单引号。 ADoQuery1.SQL.Add('Insert into 测试表(时间) values('''+FormatDateTime('yyyy-mm-dd', StrToDate(a))+''')'); 注意那些单引号。 第一,你定义的变量 a 在这里面是干什么的? 第二,你插入数据库中的记录是来自于 edit2.text,不是 a 那么,你的edit2里面输入的是什么? 第三,你的数据库里面,测试表的时间用的是什么类型字段? --SQL脚本 insert into Table1(Adate) select getdate() |
| 《用Delphi向数据库中插入时间》答案收集时间:2008-06-14 14:28:31 |