MySQL和Oracle差异

create table t_user(

   fid number(4),

   fname varchar2(40)

);

create table t_book(

   bid number(4),

   bfid number(4),

   bname varchar2(40)

);

–更改表名

MySQL:

   alter table t_user rename to t_u;

Oracle:

   rename t_user to t_u;

   或者alter table t_user rename to t_u;

–创建非空约束

crate table t_user(

  fid number(4) not null,

  fname varchar2(40)

);

alter table t_user modify fid not null;

–创建唯一约束

create table t_user(

   fid number(4) unique,

   fname varchar2(40)

);

create table t_user(

   fid number(4),

   fname varchar2(40),

   constraint uk_id unique(fid)

);

alter table t_user modify fid unique;

alter table t_user add constraint uk_id unique(fid); –此处不能加key

–创建主键约束

create table t_user(

   fid number(4) primary key,

   fname varchar2(40)

);

create table t_user(

   fid number(4),

   fname varchar2(40),

   constraint pk_id primary key(fid)

);

alter table t_user modify fid primary key;

alter table t_user add constraint pk_id primary key(fid);

–创建外键约束,级联更新、级联删除

create table t_book(

   bid number(4),

   bfid number(4),

   bname varchar2(40),

   constraint fk_bfid foreign key(bfid) references t_user(fid) 

              on update set null/cascade

              on delete set null/cascade

);

alter table t_book add constraint fk_bfid foreign key(bfid) references t_user(fid)

  on update set null/cascade

  on delete set null/cascade;

create table t_book(

   bid number(4),

   bfid number(4),

   bname varchar2(40),

   foreign key(bfid) references t_user(fid)

           on update set null/cascade

           on delete set null/cascade

);

–创建默认约束、检查点约束

create table t_user(

   fid number(4),

   fname varchar2(40),

   fsex varchar2(1) default 'M' check(fsex in('M','F'))

);

alter table t_user modify fsex varchar2(1) default 1 check(fsex in(1,0));

–删除约束、禁用约束、启用约束

MySQL:

alter table t_user drop primary key;

alter table t_book drop foreign key fk_bfid;

Oracle:

alter table t_book drop constraint uk_id/pk_id/fk_bfid;

alter table t_user drop unique(fid);–删除唯一约束

alter table t_book disable constraint uk_id/pk_id/fk_bfid;

alter table t_book enable constraint uk_id/pk_id/fk_bfid;

–创建索引

create [unique] index idx_id on t_user(fid);

–重建索引

MySQL:

Oracle:

  alter index idx_id rebuild;

–删除索引

MySQL:

  alter table t_user drop index idx_id;

Oracle:

  drop index idx_id

–创建视图

create view v_user as select * from t_user;

–删除视图

drop view v_user

–重命名视图

MySQl:

Oracel:

   rename v_user to v_u;

–创建只读视图

MySQL:

  create view v_user as select * from t_user readonly;

Oracle:

  create view v_user as select * from t_user readonly;

  create view v_user as select * from t_user with read only;

create table t_user(

   fid int(4) primary key,

   fname varchar(40)

);

create table t_book(

   bid int(4),

   bfid int(40),

   bname varchar(40)

);

insert into t_user values(1,’张三’);

insert into t_book values(1,1,’JavaWeb’);

alter table t_book add constraint fk_bfid foreign key(bfid) references t_user(fid);

–MySQL中删除外键:

–创建外键注意事项:

–从表的外键必须是主表的主键

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值