无效数字SQL 01722

无效数字SQL 01722,sql,oracle,Sql,Oracle,我创建了这个表: create table user_info( ID number(3) primary key, employee_id number(6), login varchar2(8) not null, password varchar2(16) not null, check (password>5), creation_date date default sysdate, constraint empid_fk foreign key(employee_id) refe

我创建了这个表:

create table user_info(
ID number(3) primary key,
employee_id number(6),
login varchar2(8) not null,
password varchar2(16) not null, check (password>5),
creation_date date default sysdate,
constraint empid_fk foreign key(employee_id) references employees(employee_id)
)
当我想插入一些值时

insert into user_info values(123,123123,'login','password','08-04-2016');
我收到这个错误:

01722. 00000 -  "invalid number"
*Cause:    
*Action:
有人能解释一下我的insert查询出了什么问题吗

检查(密码>5)

在那里不行。您的密码是varchar2,不是数字。无法检查其值是否大于5,因为它不是一个数字

如果要检查其中的字符数,可以使用:

密码varchar2(16)非空检查(长度(密码)>5)


93600000-“缺少表达式”*原因:*操作:我收到此错误,如果我检查您是如何编写的,只是因为键入错误而编辑的,您可以这样尝试吗?LEN 00904。00000-“%s:无效标识符”*原因:*操作:您使用的是SQL Server、Oracle还是其他任何东西?请尝试使用长度。以前应该问过,因为您使用的是SQL Server(这就是为什么在问题上给出好的标记很重要:p)这是Oracle数据库吗?