DDL语句

来源:互联网 发布:思派网络 ceo 马旭广 编辑:程序博客网 时间:2024/05/29 11:08
四 DDL语句
     1.建表语句 
字段名、主键类型、惟一性约束是否为空、关联表关联、哪一个字段外键值、数据类型,数据长度
范式:
 第一范式:所有属性必须是单值 大小不可以做
 第二范式:所有属性必须依赖主键
 第三范式:非惟一属性必须依赖非唯一相关
 学号,姓名,三围,学科,成绩,价格
 根据第一范式:三围不满足
 第二:价格,学科,成绩不满足
表名:以字母开头,1-30个字符,命名不要重复
字符串,字符,整型,小数,DATE,大数
       create table 表名 
       (
字段名  数据类型 [default 缺省值] [constrait 约束名]约束,...]
 .....,
constraint 表约束,


)

create table stu_ywx
(
   id number(5/长度),//(5,2)如果是小数长度,位数
   name varchar2(20),   
   score number(5,2) 
)
create table stu_ywx1
(
   id number(5) default 1,//(5,2)
   name varchar2(20) default 'ywx',   
   score number(5,2) 
);
insert into stu_ywx1(id) values(20);
commit;//插入才能成功
drop table tablename//删除表
    2.创建表
    3.指定字段的缺省值
    4.指定字段非空约束
 表约束
 字段约束
 not null 字段约束
       create table stu_y
(
  id number default 1 constraint nul_1 not null,
  name varchar2(30) constraint nul_2 not null,
  score number(5,2) not null
  constraint 。。。表约束
);
insert into stu_y (id,name,socre) values(10,'killer',99.99);
commit;
    5.主键约束 不要字符串类型,尽量整型
      create table stu_y
(
  id number default 1 constraint nul_1 not null 1.//(constraint pk_id)可省略  primary key,
  name varchar2(30) constraint nul_2 not null,
  score number(5,2) not null
  2.//constraint pk_id primary key(id,...),
);
insert into stu_y (id,name,socre) values(10,'killer',99.99);
commit;
   6.外键约束
create table score_2
(
  id number(5) not null primary key,
  score float default 0 not null
)
create table stu_2
(
 id number not null primary key,
 name varchar2(30) not null //unique 快速唯一约束,
 score_id number(5) not null,
 constraint pk_fk_001 foregin key(score_id) references score_2(id) on delete           cascade//主表删除相关级联表也会被删除 on delete set null 当score_2表删除可以删除主     表的相关记录为空 
stu_2 score_id 记录
)
   7.唯一约束
   8.check 约束 字段约束 不影响其它行
create table stu_3
(
 id integer not null primary key,
 name varchae2(30) not null constraint chk_1111 check(length(name<=10));
)
把另一个表查询结果用as充当新表
0 0
原创粉丝点击