Oracle 約束條件與資料表

2021-07-15 21:01:01 字數 2286 閱讀 2420

--1.建立班級資訊表,classes(cid int 主鍵,cname varchar2(100) 非空 唯一,intro varchar2(1000));

--使用insert語句插入5條資料

create table classes(

cid int constraint pk_cid primary key,

cname varchar2(100) not null unique,

intro varchar2(1000)

)insert into classes (cid,cname,intro) values(1401,'小九','40');

insert into classes (cid,cname,intro) values(1402,'小黑','38');

insert into classes (cid,cname,intro) values(1403,'小白','36');

insert into classes (cid,cname,intro) values(1404,'小蘭','42');

insert into classes (cid,cname,intro) values(1405,'小哈','45');

select *from classes;

--2.建立學生資訊表,stuinfo(sid int 主鍵,sname varchar2(100) 非空,*** char(2) 男或者女 預設為男,

--age int 15到30之間,address varchar2(200) 預設位址不詳,cid int 外來鍵);

--使用insert語句插入5條資料

create table stuinfo (

sid int constraint pk_sid primary key,

sname varchar2(100) not null,

*** char(2) default '男' check(*** in ('男','女')),

age int  check(age between 15 and 30),

address  varchar2(200) default '位址不詳' ,

cid int constraint fk_cid references classes(cid)

)--drop table stuinfo;

select * from stuinfo;

insert into stuinfo (sid,sname,***,age,address,cid) values(1001,'小九','女',20,'hunan',1401);

insert into stuinfo (sid,sname,***,age,address,cid) values(1002,'小黑','女',19,'hunan',1402);

insert into stuinfo (sid,sname,***,age,address,cid) values(1003,'小白','女',23,'hunan',1403);

insert into stuinfo (sid,sname,***,age,address,cid) values(1004,'小蘭','女',20,'hunan',1404);

insert into stuinfo (sid,sname,***,age,address,cid) values(1005,'小哈','女',21,'hunan',1405);

--3.複製一張新錶classes2表結構與班級資訊表classes一致

create table classes2 as select *from classes where 0=1;

--4.重新命名classes2表為classinfo;

alter table classes2 rename to classinfo;

--5.修改classinfo表

--(1)新增字段       班級人數 num  int

alter table classinfo add num int ;

select *from classinfo;

--(2)更改資料型別   cname 長度修改為 varchar2(50)

alter table classinfo modify cname varchar2(50);

--(3)刪除字段       intro

alter table classinfo drop column intro;

--(4)修改欄位名     cid  修改為cno

alter table classinfo rename column cid to cno;

Oracle資料庫03 表的約束條件

約束是表一級的限制 如果存在依賴關係,約束可以放置錯誤的資料 1 可以自定義約束,也可以使用oracel server 的sys cn格式命名約束 2 約束建立可以在建立表的時候同時建立約束,也可以 表結構建立完成後建立約束。3 約束可以定義在列一級,或者是表一級 4 通過資料字典檢視約束 1 非空...

Oracle 資料表約束

2.2 唯一性約束 2.3 主鍵約束 2.4 外來鍵約束 3.禁用和啟用約束 資料庫不僅僅是用來儲存資料,它還必須保證所儲存資料的正確性。如果資料不準確或不一致,那麼該資料表的完整性就可能受到了破壞,從而給資料庫本身的可靠性帶來問題。為了維護資料庫中資料的完整性,在建立表時常常需要定義一些約束。約束...

建立表和約束條件

oracle中建立表主要關注表字段的型別和對應的約束條件。1 建立表語句 create table tname fied1 型別1,fied1 型別2,create table tname as 子查詢 複製現成表 2 字段型別 varchar n 建立可以存放n個字元的字段,資料長度可以自動變長,...