Oracle 資料庫基礎知識點總結(一)
1.資料庫表的完整性
①實體完整性:靠主鍵來維護,資料唯一且不能為空
②參照完整性:靠外來鍵來維護,主鍵表無記錄外見表則無法操作資料
③域完整性:check()約束 not null 約束 default 等
④使用者定義的完整性:基本涵蓋上述三種資料庫完整性
2.選擇代理主鍵作為主鍵
當業務鍵資料發生修改後用代理鍵作元資料標識,方便對資料管理
3.為什麼伺服器和客戶端都要對輸入進行驗證?①客戶端:減輕服務端承載壓力,保證資料有效性、合法性
②伺服器:保證系統的安全性和資料安全性
4.簡述DDL、DML、DCL、DQLDML(
Data Manipulation Language表資料操縱語言):insert update deleteDDL(Data Definition Language表結構定義語言): create alter drop
DCL(Data Control Language表資料控制語言)grant:授權 rollback 回滾 commit 提交(顯式、隱式、自動提交)
DQL(Data Query Language 表資料查詢語言):select .... from ....where ....
5.ORACLE中如何登入管理員conn system/密碼
conn/as sysdba 超級管理員
6.char與varchar的區別char:定長字元 檢索效率高,在儲存簡單資料中使用
varchar:可變長度字元 檢索效率低,但可以節約伺服器資源
7.如何建立使用者並指定密碼<strong> create user ytc identified by ytc</strong>
8.如何為使用者授權
grant resource,connect,dba to ytc;
9.如何建表提示·········以下三種複製表的方式並未複製資料庫表的完整性
① create table emp1 as select * from emp;------
複製表結構和資料② create table emp2 as select ename,job from emp; ------選擇emp表中兩列表結構和資料建立新表
③ create table emp3 as select * from emp where 1=2; -----複製一張空表
10.如何定義主鍵和外來鍵alter table film add constraint pk_film primary key(filmid);
alter table film add constraint fk_film foreign key(filmid) references filmtype(typeid);
11.如何為表增加1列alter table film add filmname varchar2(10); 為表增加filmname列
12.如何修改指定列的型別alter table film modify filmname number; 修改filmname為number型別
13.如何修改指定列的列名?如何修改表名alter table film rename column filmname to filminfo; 修改film表中filmname列名為filminfo
rename film to film2;
14.如何刪除指定列alter table film2 drop column filminfo;
15.如何為表新增一條資料insert into filminfo values(2,1,'畫素大戰','忘記了','不記得',20);
insert into filminfo(filmid,typeid,filmname,ticketprice) values(3,1,'港囧','9');16.什麼是事務?如何提交資料
事務:訪問或更新資料庫資料項的一個程式執行單元,關係型資料庫中表現為一條或是一組SQL語句
特性:①要麼什麼都做,要麼什麼都不做;②一個事務的執行與其他事務互不影響
③一旦事務提交資料就具有永續性,其他程式或是故障部隊其產生任何影響
事務提交:commit(表示程式全部完成不出現任何故障)rollback 回滾 業務程式出現問題就回滾到初始儲存狀態
17.如何匯出表和表中的資料cmd 命令:exp
18.如何將匯入的資料重新匯入資料庫cmd 命令:imp
19.如何回滾資料?rollback;在沒commit之前可以回滾程式到初始儲存狀態
20.如何設定事務的儲存點savepoint(sp1);儲存點後面的所有資料在執行回滾後都將失效,而在它之前的都將保留
21如何回滾到指定的儲存點rollback to sp1;