数据库中插入数据时发生ora-00984错误

 

操作Oracle数据库,插入数据时显示:ORA-00984列在此处不允许错误,如下图所示:

9e10cf83490e1ee747bb37b0cd73b0d6

出现的原因是由于,在插入字符或字符串型字段时。如果插入的数据是纯数字,则不会有错误;如果出现字符,则会报ORA-00984列在此处不允许异常。 可以创建TestUser表,如下:

  1. create table TestUser (  
  2.     usercode char(5),  
  3.     username varchar2(20)  
  4. )  

以下例子请注意第一个字段usercode的值

1、正常例子:usercode为纯数字。可以正常插入TestUser表:

  1. insert into TestUser values (11111,'张三');  

2、异常例子:usercode第一位出现字符A。就会出现ORA-00984列在此处不允许错误:

  1. insert into TestUser values (A1111,'张三');  

3、解决例子:usercode两端加上了单引号。解决办法很简单,只要给字段值前后加上单引号即可:

  1. insert into TestUser values ('A1111','张三');  

总之,对于字符型字段,大家在插入数据时最好在字段值两端加上单引号,这样就可以很好的避免ORA-00984错误了。

 

备注:针对数字型,直接写数字就行,字符类型的使用单引号。

posted @ 2018-03-29 16:34  美国大兵  阅读(792)  评论(0编辑  收藏  举报