新建表/约束时的试验

create table tb_user(
        userid number(5),
        username varchar2(60) constraint nn_user_name not null,
        userpwd varchar2(60) constraint nn_user_pwd not null,
        age number(3) default(18),
        gender char(3) default(''),
        email varchar2(30),
        regtime data default(sysdate),
        constraint pk_user_id primary key (userid),
        constraint ck_user_name check(length(username) between 4 and 20),
        constraint ck_user_pwd check(length(userpwd) between 4 and 18),
        constraint ck_user_age check(age>=18),
        constraint ck_user_gender check(gender in('','')),
        constraint uq_user_email unique(email)
    );
    
create table tb_txt(
        txtid number(10),
        title varchar2(60) constraint nn_txt_title not null,
        txt varchar2(1024),
        pubtime data default(sysdate),
        userid number(5),
        constraint pk_txt_id primary key(txtid),
        constraint ck_txt_id check(length(title)>=4 and length(title)<=30),
        constraint fk_txt_ref_user_id foreign key(userid) references tb_user(userid)
on delete set null
    );
View Code
  • 验证USERID的主键约束(非空且唯一)——非空

验证USERID的主键约束(非空且唯一)——唯一

  • 验证USERNAME的检查约束(后面的我就不记了,全是截图。如果以后有闲心在补吧)

 所以,为什么是无效数据类型呢?哪块错了呢?

在行: 17 上开始执行命令时出错 -

错误报告 -
ORA-00902: 无效数据类型
00902. 00000 - "invalid datatype"
*Cause:
*Action:

 

橘子Jane
原文地址:https://www.cnblogs.com/Jane-share/p/15338373.html