
在Oracle数据库,可以通过字段定义缺省值,实现在往表中插入数据时,如果不指定为该字段赋值,自动写入缺省值。
示例:
CREATE TABLE XXX(
SUM_MONTH VARCHAR2(10) DEFAULT TO_CHAR(SYSDATE,'YYYYMM'),--缺省,设置数据月份
LOAD_DATE DATE DEFAULT SYSDATE--缺省,设置加载时间
);
也可以通过修改已建的表的定义,为现存的表字段增加设置。
你好,Oracle中日期类型是date类型,sql语句中是区分类型的,也就是说虽然形势上'2012-12-21'是一个日期,但是它在Oracle中却是实实在在的字符串类型,所以不能插入到date类型的字段里,解决方法就是将日期字符串转换成date类型就可以了,这里可以使用to_date函数,如:
insert into tablename (date_column) values(to_date('2012-12-21','yyyy-mm-dd') )。
to_date里需要两个参数,第一个是日期字符串,可以在程序中拼好(Java或者其他高级程序语言想实现这一点都是很容易的);第二个参数是日期的格式,'yyyy-mm-dd'的意思是想要4位的年份,两位的月份(比方说如果为2,则保存为:02)和两位的日期(这个意义和月份相同,假如为4号,则保存为04)。如果想要其他的格式或者想插入具体的时分秒时间都是可以的,比如:
to_date('2012-12-21 12:12:12','yyyy-mm-dd hh24:mi:ss')后边的24代表使用24时制时间。够明白吧!
以下列举两种方式在在Oracle中获得日期中的年份,例如把sysdate中的年份取出来。
1、Select to_number(to_char(sysdate,'yyyy')) from dual
实例代码:
select
to_number(to_char(thiredate,'yyyy'))as 入职年,
from emp t;
运行结果:
2、使用Extract函数,Select Extract(year from sysdate) from dual,这种方法省掉了类型转换,
看上去更加简洁。此方法获得的结果,是数值型
实例代码:
select
extract(year from thiredate) as入职年,
from emp t ;
运行结果:
扩展资料:
如果想在Oracle中获取日期中的月份,天数。可以将Select to_number(to_char(sysdate,'yyyy'))
from dual改为Select to_number(to_char(sysdate,'MM')) from dual和Select
to_number(to_char(sysdate,'DD')) from dual。
Extract函数中只需将Select Extract(month from sysdate) from dual改为Select Extract(year from sysdate) from dual和Select Extract(day from sysdate) from dual
用to_char就可以了
比如当前时间的
select to_char(sysdate,'yyyy') from dual结果:
1、因为oracle运行在Linux系统下,首先,要连接Linux系统。
2、切换到oracle安装用户下。 我的是 oracle。
3、运行oracle的环境变量, 以便输入相关命令。
4、进入oracle控制台。输入命令: sqlplus / as sysdba。
5、关闭数据库, 输入命令: shutdown immediate。
可以用
to_date('日期类型字符串','要转化的日期类型')函数进行日期格式转换
sql:select
to_date('1990-12-12
12:12:32','yyyy-MM-dd
hh24:mi:ss')
from
dual;
解释:此语句的输出结果就是
“1990-12-12
12:12:32”(日期类型)。后面的日期类型格式可以根据实际需要修改
如改为:select
to_date('1990-12-12
12:12:32','yyyy-MM-dd
)
from
dual;输出结果就是“1990-12-12”
oracle中没有你说的这种短日期,最短的也就是date,不过他可以精确到时、分、秒。如果你想存短日期数据,可以定义为date类型,存储的时候,使用trunc函数来截取插入的时间,截取到整天。这样时 分 秒 都是00 00 00,
oracle中的时间类型只有date和TIMESTAMP,TIMESTAMP是比date更精确的类型。
1、登录“Oracle”后输入语句:
“altersessionsetnls_date_format='yyyy-mm-dd';
altersessionsetnls_date_format='yyyy-mm-ddhh24:mi:ss';”。
2、重启数据库,进入“服务”找到“Oracle”的服务,先右键选择“停止”然后再右键选择“启动”,即可修改默认的日期格式。
以上就是关于Oracle数据库,怎么让日期字段自动添加日期时间全部的内容,包括:Oracle数据库,怎么让日期字段自动添加日期时间、怎么给oracle数据库表加入日期类型的值、oracle中如何获得日期中的年份等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)