oracle笔记02

来源:互联网 发布:宠物小精灵是什么软件 编辑:程序博客网 时间:2024/05/17 06:21
创建学生表,字段和类型如下所示:
字段 字段类型 说明 id 整型 number name 字符型 varchar2 sex 字符型 char(2) brithday 日期型 date score 小数型 number(3,1) resume(简历) 大文本型 clob
create table students(       id number,       name varchar2(32),       sex char(20),       birthday date,       score number(3,1),       resume clob);
–添加班级字段 cid
alter table students add(cid number);
–学生姓名变成 varchar2(30)
alter table students modify(name varchar2(30));
–删除简历字段
alter table students drop(resume);
–修改表名
rename students to stus
–修改列名 cid–>classid
alter table stus rename column cid to classid;
——————–约束———————-
–非空约束:顾名思义,所约束的列不能为 NULL 值。否则就会报错
     create table t1(id number,name varchar2(32) not null);
—唯一(UNIQUE )约束:在表中每一行中所定义的这列或这些列的值都不能相同。
– 必须保证唯一性。否则就会违法约束条件。
–注意:用于指定列的值不能重复,可以为null
  create table t2(id number unique,name varchar2(30));
–主键约束:唯一而且不能为null,一个表只能有一个主键约束
    create table t3(id number primary key ,name varchar2(30));
–外检约束:用于定义主表和从表之间的关系,外键约束要定义在从表上,主表则必需
– 具有主键约束或是 e unique 约束,当定义外键约束后,
– 要求外键列数据必需在主表的主键列存在或是为 null
    create table class(cid number primary key,            cname varchar2(32) not null);    create table t4(sid number primary key,           sname varchar2(32) not null,           classid number references class(cid)           );
–条件(CHECK )约束:表中每行都要满足该约束条件。
– 条件约束既可以在表一级定义也可以在列一级定义。
– 在一列上可以定义任意多个条件约束。
  create table t5(         id number primary key,         sal number check(sal>=1000 and sal<2000),         sex char(2) check(sex in ('男','女'))   );       
–案例
–商品goods表:
商品号 goodsId(主键),商品名 goodsName(非空),
单价 price(大于零),商品类别 category,供应商 provider;
  create table goods(         goodsid number primary key,         goodsname varchar2(64) not null,         price number check(price >0),         category varchar2(10),         provider varchar2(64)  );   
–客户customer表:
客户号 customerId(主键),姓名 name(非空),住址 address,
邮箱 email,性别 sex(默认男,check),身份证 cardId(唯一);
  create table customer(         customerid number primary key,         cname varchar2(20) not null,         address varchar2(200),         email varchar2(64)  unique,         sex char(2) default '男' check(sex in ('男','女')),         idcard char(18) unique   );
–购买purchase表:
客户号 customerId(外键),商品号 goodsId(外键),
购买数量 nums(1 到 30 个);
    create table purchase(           cid number references customer(customerid),           gid number references goods(goodsid),           nums number check(nums>=1 and nums<=30)    ); 
–要求
建表,在定义中要求声明:
   (1).每个表的主外键;   (2).客户的姓名不能为空值;   (3).单价必须大于 0,购买数量必须在 1 到 30 之间;   (4).邮箱不能够重复;   (5).客户的性别必须是 男 或者 女,默认是男;
–维护约束
     create table t6(id number,              name varchar2(32),              idcard char(18),              address varchar2(200)              );
–增加主键:
    alter table t6 add constraint PK_T6 primary key(id);
–添加非空约束
  alter table t6 modify name not null;
–添加唯一约束
    alter table t6 add constraint UK_IDCARD unique(idcard);

##### –添加检查约束

     alter table t6 add constraint CK_ADDRESS check(address in ('伊滨','老城区','洛龙区'));
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 我尝到了母爱的滋味300 儿子别射J去妈会怀孕视频中文 全屏儿子射J去妈怀孕了漫画 全屏无遮单身妈和儿 四川真实亲妈视频y 全屏无遮单身妈和儿子漫画 全屏无遮单身妈和儿子线播放 青岛重庆真实儿子亲妈 全屏无遮单身在线播放 四川真实亲妈视频链接 全屏无遮单身妈和儿子在线播放中文字 白边液越用白边越大 四川亲妈真实视频 普通话对白边电话边看边干 浙江边干边对白边对白边对白 离婚后一直跟儿子做 边骂脏话对白 离婚多年生理需求和儿子 儿子很帅没忍住和他 离婚后跟儿子做 和儿子一起旅游没忍住 离婚很多年和儿子一起 怀孕了、是儿子的 子母相伦动漫视频 离婚多年和儿子一起打工住一起没忍住 双子母视频 视频播放 与岳 母坐摩托车txt小说 我的丝母韵母txt 经典家庭伦txt丝母韵欲下载 经典家庭伦txt丝母韵欲阅读 经典家庭伦txt丝母韵欲全文阅读 笔趣阁丝母欲韵1-5 我的丝母韵欲txt下载 丝母欲韵1-5阅读 水利局的妈赵丽颖我的丝母欲韵 我的丝母欲韵4-9 经典家庭伦txt岳丝母小丹韵欲下载 水利局的妈赵丽静 我的丝母欲韵 岳丝母小丹韵 丝母欲韵txt全文下载80 经典家庭伦txt丝母韵欲光棍