如何使用/插入带有日期数据类型的不同输入的表格?
insert into run(id,name,dob)values(&id,'&name',[what should I write here?]);
我正在使用oracle 10g。
答案 0 :(得分:21)
由于dob
是DATE
数据类型,您需要使用DATE
和正确的格式模型将文字转换为TO_DATE
。语法是:
TO_DATE('<date_literal>', '<format_model>')
例如,
SQL> CREATE TABLE t(dob DATE);
Table created.
SQL> INSERT INTO t(dob) VALUES(TO_DATE('17/12/2015', 'DD/MM/YYYY'));
1 row created.
SQL> COMMIT;
Commit complete.
SQL> SELECT * FROM t;
DOB
----------
17/12/2015
DATE
数据类型包含日期和时间元素。如果您不关心时间部分,那么您还可以使用ANSI Date文字,它使用固定格式'YYYY-MM-DD'
并且与NLS无关。
例如,
SQL> INSERT INTO t(dob) VALUES(DATE '2015-12-17');
1 row created.
答案 1 :(得分:2)
日期必须插入两个撇号' 例如,日期为2018/10/20。可以从这些查询中插入
查询-
insert into run(id,name,dob)values(&id,'&name','2018-10-20')
答案 2 :(得分:0)
您还可以在只需要“ dd-mm-yyyy”的地方使用“时间戳”数据类型。
赞:
insert into emp values('12-12-2012');
考虑到表中只有一列... 您可以根据表格调整插入值。
答案 3 :(得分:0)
我只是编写了一个嵌入式SQL程序来编写带有日期字段的新记录。 到目前为止,这是最好的和最短的,没有任何错误,我能够达到我的要求。
w_dob = %char(%date(*date));
exec sql insert into Tablename (ID_Number ,
AmendmentNo ,
OverrideDate ,
Operator ,
Text_ID ,
Policy_Company,
Policy_Number ,
Override ,
CREATE_USER )
values ( '801010',
1,
:w_dob,
'MYUSER',
' ',
'01',
'6535435023150',
'1',
'myuser');
答案 4 :(得分:-1)
假设我们使用SQl服务器管理工作室创建表事务
txn_id int,
txn_type_id varchar(200),
Account_id int,
Amount int,
tDate date
);
具有 date 数据类型,我们可以以简单格式插入值:'yyyy-mm-dd'
INSERT INTO transactions (txn_id,txn_type_id,Account_id,Amount,tDate)
VALUES (978, 'DBT', 103, 100, '2004-01-22');
此外,我们可以使用
等不同的时间格式DATE - format YYYY-MM-DD
DATETIME - format: YYYY-MM-DD HH:MI:SS
SMALLDATETIME - format: YYYY-MM-DD HH:MI:SS
答案 5 :(得分:-1)
插入run(id,name,dob)values(&id,'&name',[我应该写什么 这里?]);
paste