ORACLE数据库设置date类型默认值后为啥还要手动添加?是否我写错了?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ORACLE数据库设置date类型默认值后为啥还要手动添加?是否我写错了?相关的知识,希望对你有一定的参考价值。

我创建表的部分代码:
ctime date default to_date('2020-07-05','yyyy-MM-dd')

我的添加语句
insert into userinfo values(seq_userinfo.nextval,'小四','140','110@qq.com','女');
这样会出现没有足够的值,该怎么写让它自动添加这个默认值呢求教

表字段设置date类型默认值,不需要手工添加,提示没有足够的值,是SQL本身的语法问题,insert语法要求如果不加列名,值的个数必须与表字段个数一致。
你的这种情况下,必须指定字段名。
参考技术A

好说,insert  into 表  后面列上你要插入的字段 不包含这么默认日期的就行了

参考技术B insert的时候不插入全部列,就要把要插入哪些列列出来。
应该修改为:
insert into userinfo(id,name,这啥,email,sex) values(seq_userinfo.nextval,'小四','140','110@qq.com','女');

向数据库中添加Date类型数据时为啥结果是1970-01-01

select to_char(hiredate,'YYYY-MM-DD HH:MI:SS') from emp;
必须转换显示格式;你试试;
参考技术A date类型 后面还要加显示方式呢,哥们

以上是关于ORACLE数据库设置date类型默认值后为啥还要手动添加?是否我写错了?的主要内容,如果未能解决你的问题,请参考以下文章

oracle 全年度值没有为零 为啥还出 ora-01841

如何将oracle的date型字段默认值设置成具体的时间

oracle日期字段为varchar2类型,为啥能直接比较

向数据库中添加Date类型数据时为啥结果是1970-01-01

ORACLE数据库中怎么设置date类型

设置oracle11g定时自动备份,为啥没有备份?请大神们帮我看看为啥!