資料庫中對錶的基礎操作

2021-08-17 04:35:01 字數 3481 閱讀 3549

1.對於初學者先點一下,注釋不是「//」而是「--」。

2.使用者的資料實際上是存放在資料庫的表中,所以當我們要向資料庫中存放資料時,必須先建立表。

3.建立語法:

create table [《模式名》.<>(

《欄位2>《型別》[約束條件];

《欄位2>《型別》[約束條件];

......

)[tablespace《命名空間》];

4.新增一條資料:  eg: insert into classinfo values(1001,'軟體15',2015,4);

6.刪除資料: 語法: delete from 《表名》[where《條件》]

eg: delete from classinfo;

7.若發現資料缺失了資料完整性 eg:班級編號重複了、班級名稱為空等

此時我們可以通過新增約束來解決。

1.新增主鍵約束語法:alter table 《表名》 add constraint 《主鍵約束名》 primary key(主鍵名);

eg: alter table classinfo add constraint pk_classinfo_cid primary key(cid);

2.非空約束語法:alter table 《表名》 modify 《列名》 not null;

eg: alter table classinfo modify cname not null;

3.唯一約束語法:alter table 《表名》 add constraint 《唯一約束名》 unique(列名1,列名2...);

--[using index tablespace《表空間》]

eg: alter table classinfo add constraint uq_classinfo_cname unique(cname);

8.刪除表的語法:  drop table 《表名》

eg: drop table classinfo;

9.重新建立帶行級約束的表

create table classinfo(

cid number(4) primary key,  --帶主鍵的班級編號

cname varchar2(100) unique not null,  --班級名稱(唯

一、且非空)

cyear number(4), --入學年份

clen number(1) --學制     括號中的數字表示這個數字有幾位

);10.重新建立帶表級約束的表

create table classinfo(

cid number(4) primary key,  --帶主鍵的班級編號

cname varchar2(100) unique not null,  --班級名稱(唯

一、且非空)

cyear number(4), --入學年份

clen number(1) --學制     括號中的數字表示這個數字有幾位

constraint pk_classinfo_cid primary key(cid),

constraint uq_classinfo_cname unique(cname)

);11.新增外來鍵約束來使兩個表相連:

語法:alter table 《表名》 add constraint 《外來鍵約束名》 foreign key(列名) references 《被引用的表名》(《列名》);

[on delete cascade | on delete set null]

eg:alter table stuinfo add constraint fk_stuinfo_cid foreign key(cid) references classinfo(cid);

12.檢查判斷約束:

檢查語法:alter table 《表名》 add constraints 《檢查約束名》 check (《檢查條件》);

eg:  alter table stuinfo add constraints ck_stuinfo_*** check (*** = '男' or *** = '女');

alter table stuinfo add constraints ck_stuinfo_*** check (*** in ('男','女'));   --兩種都行

13.刪除唯一約束:

刪除語法:alter table 《表名》 drop constraint 《約束名》;

14.約束操作:

1.刪除****上的唯一約束

語法:alter table 《表名》 drop constraint 《約束名》;

eg : alter table stuinfo drop constraint ck_stuinfo_***;

2.禁用性別上的檢查約束

語法:alter table 《表名》 disable constraint ck_stuinfo_***;

eg : alter table stuinfo disable constraint ck_stuinfo_***;

3.啟用姓名上的非空約束

語法:alter table 《表名》 enable constraint 《約束名》;

eg : alter table stuinfo enable constraint ck_stuinfo_***;

15.修改表結構:

1.檢視表的結構:  select * from user_tab_columns where table_name = 'stuinfo';  //必須大寫

2.將學生資訊表stuinfo重新命名為studentinfo

語法:alter table 《原表名》 rename to 《新錶名》;

alter table stuinfo rename to studentinfo;

3.將學生資訊表中的列***重新命名為stu***

語法:alter table 《表名》 rename column 《原列名》 to 《新列名》;

alter table studentinfo rename column *** to stu***;

4.在學生資訊表中新增列stupwd,型別為number(10);

語法:alter table 《表名》 add 《列名》 《資料型別》 [default] [null/not null];

alter table studentinfo add stupwd number(10);

5.修改學生資訊表中的列stupwd的資料型別為varchar2(20);

語法:alter table 《表名》 modify 《列名》 《資料型別》 [defauult] [null/not null];

alter table studentinfo modify stupwd varchar2(20);

6.刪除列學生資訊表中的列 stupwd

語法:alter table 《表名》 drop column 《列名》;

alter table studentinfo drop column stupwd;

資料庫對錶的操作練習。

檢視崗位是teacher的員工姓名 年齡 檢視崗位是teacher且年齡大於30歲的員工姓名 年齡 檢視崗位是teacher且薪資在9000 1000範圍內的員工姓名 年齡 薪資 檢視崗位描述不為null的員工資訊 檢視崗位是teacher且薪資是10000或9000或30000的員工姓名 年齡 薪...

Oracle資料庫對表字段的操作命令

在二次開發乙個工程時,經常會遇到對庫表的字段的操作,以下是部分常用到的命令 新增表 tdm weld 字段 例子1 alter table tdm weld add is aut number 1 default 0,is embalmed number 1 default 0 例子二 alter ...

資料庫 基礎資料庫的操作

什麼是資料庫 資料庫 database 是按照資料結構來組織 儲存和管理資料的倉庫 常見的資料庫oracle mysql sun db2 ibm sql server microsoft postgre sql 專業術語 資料庫系統 database system dbs 資料庫 database ...