重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Oracle中插入默认时间
站在用户的角度思考问题,与客户深入沟通,找到龙海网站设计与龙海网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站设计制作、网站制作、企业官网、英文网站、手机端网站、网站推广、空间域名、虚拟主机、企业邮箱。业务覆盖龙海地区。
分两种情况,一种是创建表时自动创建带有默认值的字段,一种是把没有默认值的字段设置为有默认值的字段。
第一种情况:
1
2
3
create table test
(id int,
starttime date default sysdate not null );
插入测试数据:
1
2
insert into test (id) values (1);
commit;
验证结果:
第二种情况,比如在test表中加一个endtime,时间也要求是系统默认时间。
添加字段且不设置默认值:
1
alter table test add endtime date;
添加默认值语句:
1
alter table test modify endtime default sysdate;
测试语句:
1
2
insert into test (id) values (2);
1、输入服务器地址、数据库登录用户名、登录密码,完成数据库登录操作。
2、依次点击database—Schema Browser,打开对象浏览窗口。
3、找到要操作的数据表,了解字段名及类型。
4、然后点击“Editor”返回编辑窗口,在该窗口中就可以输入sql语句,并测试运行,以检查sql语句书写是否正确。
5、要在sql语句中匹配日期型字段,就需要将sql语句中“字符”条件转换成日期,需要利用到系统自带的to_date()函数。
6、点击运行按钮,如下图所示sql语句运行结果。
在oracle中建有date类型的字段,插入可以采取如下方法:
如果是小时为:1-12 采取如下格式:yyyy-mm-dd
HH:MI:SS
如果是小时为:1-24 采取如下格式:yyyy-mm-dd
HH24:MI:SS
定义时间变量
用for...loop循环十二次插入数据,用add_months(to_date('date','yyyy-mm-dd'),1)
每循环一次加一个月。
DECLARE
nba_date
DATE
:=
SYSDATE;
BEGIN
FOR
i
IN
1
..
12
LOOP
nba_date
:=
add_months(
to_date(nba_date),1);
INSERT
INTO
nba
VALUES
('00','00',nba_date);
END
LOOP;
END;
有关日期的操作中,更多的是涉及系统当前时间,用sysdate表示即可,如果是插入其他非系统时间的日期类型数据的话,用to_date转换再插入就可以了。
例:1 insert into 表(c_date) values(to_date('20120927 20:09:47','YYYYMMDD HH24:MI:SS'));
另外:有些日期字段中会有一些默认数据,所以to_date还是挺有用的。如:
1 startdate date DEFAULT to_date('2000-01-01','yyyy-mm-dd')!