insert into values 语句问题 oracle数据库
oracle数据库DELPHI语句:declDate:string;sql:=TStringList.Create;sql.Append('insertintoT_DEC...
oracle 数据库 DELPHI语句:
declDate:string;
sql:= TStringList.Create;
sql.Append('insert into T_DECL_BASE (DECL_NO,DECL_DATE)');
sql.Append(' values(:P1,:P2)');
if not adoConn.Connected then adoConn.Open();
adoConn.BeginTrans();
adoQuery.SQL.Clear();
adoQuery.SQL.AddStrings(sql);
adoQuery.Parameters.ParamByName('P1').Value:= declNo;
adoQuery.Parameters.ParamByName('P2').Value:= declDate;
declDate是个日期.这条插入语句 我想让他按 yyyy-MM-dd 的固定格式插入表T_DECL_BASE
这应该怎样写呢?
我 使用to_date('2009-07-09 hh24:mi:ss','yyyy-MM-dd')
但是因为 我DECL_DATE字段里的 日期 有的带中文字 如 '2009-6-22 下午 04:06:50'
使用to_date时会报错 '在要求输入字符处找到非数字字符' 展开
declDate:string;
sql:= TStringList.Create;
sql.Append('insert into T_DECL_BASE (DECL_NO,DECL_DATE)');
sql.Append(' values(:P1,:P2)');
if not adoConn.Connected then adoConn.Open();
adoConn.BeginTrans();
adoQuery.SQL.Clear();
adoQuery.SQL.AddStrings(sql);
adoQuery.Parameters.ParamByName('P1').Value:= declNo;
adoQuery.Parameters.ParamByName('P2').Value:= declDate;
declDate是个日期.这条插入语句 我想让他按 yyyy-MM-dd 的固定格式插入表T_DECL_BASE
这应该怎样写呢?
我 使用to_date('2009-07-09 hh24:mi:ss','yyyy-MM-dd')
但是因为 我DECL_DATE字段里的 日期 有的带中文字 如 '2009-6-22 下午 04:06:50'
使用to_date时会报错 '在要求输入字符处找到非数字字符' 展开
展开全部
正常的oracle日期插入格式是
insert into (日期字段) values to_date('2009-07-09','yyyymmdd');
这个就是往日期字段里插了一条,为2009年7月9日的数据
但是往往有时候日期字段里还会带时间的,如果带时分秒则可
insert into (日期字段) values to_date('2009-07-09 hh24:mi:ss','yyyymmdd');
这个需要注意mi,不要写成了mm,要不可就变成月份了
你用这个往里套吧,to_date是把字符型数据转成日期型数据的一个函数
--------补充---------
那你先看看DECL_DATE这个字段是什么类型,
按照你那么说应该是varchar型的吧?如果那样的话直接 '2009-6-22' 这样插入就行了
insert into (日期字段) values to_date('2009-07-09','yyyymmdd');
这个就是往日期字段里插了一条,为2009年7月9日的数据
但是往往有时候日期字段里还会带时间的,如果带时分秒则可
insert into (日期字段) values to_date('2009-07-09 hh24:mi:ss','yyyymmdd');
这个需要注意mi,不要写成了mm,要不可就变成月份了
你用这个往里套吧,to_date是把字符型数据转成日期型数据的一个函数
--------补充---------
那你先看看DECL_DATE这个字段是什么类型,
按照你那么说应该是varchar型的吧?如果那样的话直接 '2009-6-22' 这样插入就行了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询