不是number类型的字段能不能插入空值,
而是你的表本结构本身是否允许插入空值(从你的表结构看是允许插入空值)。通过你的问题只能说明你的insert into语句本身不符合语法规则而已。
而是你的表本结构本身是否允许插入空值(从你的表结构看是允许插入空值)。通过你的问题只能说明你的insert into语句本身不符合语法规则而已。
解决方案 »
- 新手问个oracle小问题。请高手指教
- oracle中check约束数字
- ◎◎◎ 求助 expdp 使用
- 连接查询问题
- (ora-06502 pl sql 数字或值错误 字符串缓冲区太小)(ORA-03127 no new operations allowed until ..)
- 刚安装好的ORACLE里有几类用户组,各组里面有什么用户?
- Oracle怎么计算两个字符串的相似度
- 在编写程序使用Oracle数据库时,是不是只需要知道简单的DML,DDL等语句就足够了,要不要理解PL/SQL编程语句呢?
- 解决一个查询问题,不知能不能实现
- 触发器中如何删除记录
- 如何得到表的类型?自己建立的表是什么类型啊?
- sql里的IDENTITY (1, 1)如何在oracle里实现??
建表文件如下:
create table aa (
jh varchar(20) not null,
jx varchar(30),
jwx number(16,2)
)
后面的","号去掉试试
我应该如何修改??
后面的","肯定不对的。
2 jh varchar(20) not null,
3 jx varchar(30),
4 jwx number(16,2)
5 )
6 /Table createdSQL> insert into aa (jh,jx,jwx) values('aaa','bbb',null);1 row inserted
为什么 insert into aa (jh,jx,jwx) values('aaa','bbb',null); 正确,
insert into aa (jh,jx,jwx) values('aaa','bbb',); 就错误那???
另外也可以:
insert into aa (jh,jx,jwx) values('a','c','');建议不要在表中插入空值,这样可能会对以后形成大表后的查询性
能带来问题。解决方法:
create table aa (
jh varchar2(20) not null,
jx varchar2(30),
jwx number(16,2) default 0)insert into aa (jh,jx,jwx) values('a','c',0)
要么你就写null,要么你就不要加上,
语法错误。肯定不能执行
insert into aa (jh,jx,jwx) values('a','c','')
或
insert into aa (jh,jx) values('a','c')