17,380
社区成员
发帖
与我相关
我的任务
分享create table title_copy(
id number(3) not null,
t_id number(3) not null,
status char(9) default '未借出' constraint title_copy_status check(status in('已借出','未借出') ) ,
constraint title_copy_primary primary key(id),
constraint title_copy_foreign foreign key(t_id) references title(id)
); alter table title_copy modify status constraint title_copy_status check(status in('已借出','未借出')) not null ; alter table title_copy modify status constraint title_copy_status not null ;
[/quote]
后续加肯定是可以的,你的语法有问题,主题贴也没贴到底报了什么错[/quote]
补充:删除的话,可以先从user_constraints视图查出对应的约束名,就可以删了[/quote]
not null 和default不在约束名后面,通过约束名删不掉把,[/quote]
看不懂这个问题是啥意思?[/quote]
就是 如果我建表的时候呢,先写的default,not null,后面再写约束名+ 约束,这样的话删约束的时候通过约束名 也可以删掉not null 和default? [/quote]
还是看不懂
不过我觉得你查了那个数据字典视图之后,自己可以找到答案[/quote]
,,数据字典视图我们还没开始了解,不过我刚又看了一下约束类型,我发现 默认类型和not null 都属于一个单独的约束类型,也就是说 其实建表的时候可以每一个约束都给起个名字,这道题中,如果想通过约束名 删除not null, default约束,是不是建表的时候必须给他们取约束名 才行呢 ?
我刚说的not null 、default在 约束名后面意思就是 我把dafault 和not null 都写在了check约束名中后,这样我建表的时候会报错,是不是这样写 机器就认不得到底约束名指的是哪个约束了,一个约束名 只能负责一个约束 对吧[/quote]
因为default就是default,不是约束啊~
[/quote]
后续加肯定是可以的,你的语法有问题,主题贴也没贴到底报了什么错[/quote]
补充:删除的话,可以先从user_constraints视图查出对应的约束名,就可以删了[/quote]
not null 和default不在约束名后面,通过约束名删不掉把,[/quote]
看不懂这个问题是啥意思?[/quote]
就是 如果我建表的时候呢,先写的default,not null,后面再写约束名+ 约束,这样的话删约束的时候通过约束名 也可以删掉not null 和default? [/quote]
还是看不懂
不过我觉得你查了那个数据字典视图之后,自己可以找到答案[/quote]
,,数据字典视图我们还没开始了解,不过我刚又看了一下约束类型,我发现 默认类型和not null 都属于一个单独的约束类型,也就是说 其实建表的时候可以每一个约束都给起个名字,这道题中,如果想通过约束名 删除not null, default约束,是不是建表的时候必须给他们取约束名 才行呢 ?
我刚说的not null 、default在 约束名后面意思就是 我把dafault 和not null 都写在了check约束名中后,这样我建表的时候会报错,是不是这样写 机器就认不得到底约束名指的是哪个约束了,一个约束名 只能负责一个约束 对吧
[/quote]
后续加肯定是可以的,你的语法有问题,主题贴也没贴到底报了什么错[/quote]
补充:删除的话,可以先从user_constraints视图查出对应的约束名,就可以删了[/quote]
not null 和default不在约束名后面,通过约束名删不掉把,[/quote]
看不懂这个问题是啥意思?[/quote]
就是 如果我建表的时候呢,先写的default,not null,后面再写约束名+ 约束,这样的话删约束的时候通过约束名 也可以删掉not null 和default? [/quote]
还是看不懂
不过我觉得你查了那个数据字典视图之后,自己可以找到答案
[/quote]
后续加肯定是可以的,你的语法有问题,主题贴也没贴到底报了什么错[/quote]
补充:删除的话,可以先从user_constraints视图查出对应的约束名,就可以删了[/quote]
not null 和default不在约束名后面,通过约束名删不掉把,[/quote]
看不懂这个问题是啥意思?[/quote]
就是 如果我建表的时候呢,先写的default,not null,后面再写约束名+ 约束,这样的话删约束的时候通过约束名 也可以删掉not null 和default? 

[/quote]
后续加肯定是可以的,你的语法有问题,主题贴也没贴到底报了什么错[/quote]
补充:删除的话,可以先从user_constraints视图查出对应的约束名,就可以删了[/quote]
not null 和default不在约束名后面,通过约束名删不掉把,[/quote]
看不懂这个问题是啥意思?
[/quote]
后续加肯定是可以的,你的语法有问题,主题贴也没贴到底报了什么错[/quote]
补充:删除的话,可以先从user_constraints视图查出对应的约束名,就可以删了[/quote]
not null 和default不在约束名后面,通过约束名删不掉把,
[/quote]
后续加肯定是可以的,你的语法有问题,主题贴也没贴到底报了什么错[/quote]
补充:删除的话,可以先从user_constraints视图查出对应的约束名,就可以删了
[/quote]
后续加肯定是可以的,你的语法有问题,主题贴也没贴到底报了什么错
--方法1:
create table title_copy(
id number(3) not null,
t_id number(3) not null,
status char(9) default '未借出' not null,
constraint title_copy_primary primary key(id),
constraint title_copy_foreign foreign key(t_id) references title(id),
constraint title_copy_status check(status in('已借出','未借出') )
);
--方法2:
create table title_copy(
id number(3) not null,
t_id number(3) not null,
status char(9) not null,
constraint title_copy_primary primary key(id),
constraint title_copy_foreign foreign key(t_id) references title(id)
);
alter table title_copy modify status default '未借出' constraint title_copy_status check(status in ('已借出','未借出'));