【從零開始學習Oracle數(shù)據(jù)庫】(5)約束視圖與索引

-- 主鍵約束:PRIMARY KEY=不重復+不為NULL状勤;
-- (列級約束條件) 
CREATE TABLE dept_dylan (
    dept_id NUMBER (2) PRIMARY KEY,
    dept_name VARCHAR (20),
    dept_location VARCHAR (40)
);

-- 數(shù)據(jù)準備 
INSERT INTO dept_dylan
VALUES
    (10, 'developer', 'beijing');

INSERT INTO dept_dylan
VALUES
    (10, 'market', 'shenzhen');

-- 表級約束條件:建議約束命名規(guī)則:表名_列名_約束條件的類型
CREATE TABLE dept_dylan2(
    dept_id NUMBER (2),
    dept_name VARCHAR (20),
    dept_location VARCHAR (40),
    constraint dept_dylan2_pk PRIMARY KEY (dept_id)
);
-- 數(shù)據(jù)準備 
INSERT INTO dept_dylan2
VALUES
    (10, 'developer', 'beijing');

INSERT INTO dept_dylan2
VALUES
    (10, 'market', 'shenzhen');

SELECT
    *
FROM
    dept_dylan2;

-- 非空約束( not null , 簡稱 NN ) ** 非空約束只能定義在列級
CREATE TABLE student_dylan (
    id NUMBER (4) PRIMARY KEY,
    NAME VARCHAR (10) NOT NULL,
    age NUMBER (3)
);

INSERT INTO student_dylan
VALUES
    (1, 'zhangwei', 20);

INSERT INTO student_dylan
VALUES
    (2, 'zhangwei', 19);

INSERT INTO student_dylan
VALUES
    (3, NULL, 19);

SELECT
    *
FROM
    student_dylan;
-- 給非空約束命名
DROP TABLE student_dylan;

CREATE TABLE student_dylan (
    id NUMBER (4) PRIMARY KEY,
    name VARCHAR (10) constraint student_dylan_name_nn NOT NULL,
    age NUMBER (3)
);


-- 視圖可以使用 CREATE OR REPLACE 來創(chuàng)建或覆蓋,并可查詢視圖的定義持搜。 
CREATE
OR REPLACE VIEW v_emp_count AS SELECT
    dept_test_id,
    count(*) emp_num,
    sum(salary) sum_s,
    avg(IFNULL(salary, 0)) avg_s,
    max(salary) max_s,
    min(salary) min_s
FROM
    emp_test
GROUP BY
    dept_test_id;

SELECT
    *
FROM
    v_emp_count;

-- 索引 Index *
-- index :用來提高查詢效率的機制
-- ?  全表掃描方式( Full Table Scan ):查詢效率極低
-- ?  索引查詢:比全表掃描快
-- ?  索引的結構:數(shù)據(jù)+地址( 如:張三+Room203 )
-- ?  注意:對亍數(shù)據(jù)變更頻繁(DML 操作頻繁)的表 , 索引會影響查詢性能
-- ?  自勱創(chuàng)建索引:
-- 如果數(shù)據(jù)表有 PK/Unique 兩種約束 , 索引自勱創(chuàng)建 , 除此以外 , 索引必須手勱創(chuàng)建
-- ?  自定義索引語法:
--     create index 索引名 on 表名(列名) ;
-- 表的主鍵和唯一約束條件 , 會自動創(chuàng)建索引
create table student_ning7(
id INT(4),
name char(20),
email char(40),
constraint stu_n7_id_pk primary key(id),
constraint stu_n7_email_uk unique(email)
) 

create index idx_stu7_name
on student_ning7(name) ;

select * from student_ning7
where name = 'zhangsan' ;



最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市葫盼,隨后出現(xiàn)的幾起案子残腌,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,548評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件废累,死亡現(xiàn)場離奇詭異,居然都是意外死亡脱盲,警方通過查閱死者的電腦和手機邑滨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來钱反,“玉大人掖看,你說我怎么就攤上這事∶娓纾” “怎么了哎壳?”我有些...
    開封第一講書人閱讀 167,990評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長尚卫。 經常有香客問我归榕,道長,這世上最難降的妖魔是什么吱涉? 我笑而不...
    開封第一講書人閱讀 59,618評論 1 296
  • 正文 為了忘掉前任刹泄,我火速辦了婚禮,結果婚禮上怎爵,老公的妹妹穿的比我還像新娘特石。我一直安慰自己,他們只是感情好鳖链,可當我...
    茶點故事閱讀 68,618評論 6 397
  • 文/花漫 我一把揭開白布姆蘸。 她就那樣靜靜地躺著,像睡著了一般芙委。 火紅的嫁衣襯著肌膚如雪逞敷。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,246評論 1 308
  • 那天题山,我揣著相機與錄音兰粉,去河邊找鬼。 笑死顶瞳,一個胖子當著我的面吹牛玖姑,可吹牛的內容都是我干的。 我是一名探鬼主播慨菱,決...
    沈念sama閱讀 40,819評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼焰络,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了符喝?” 一聲冷哼從身側響起闪彼,我...
    開封第一講書人閱讀 39,725評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后畏腕,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體缴川,經...
    沈念sama閱讀 46,268評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,356評論 3 340
  • 正文 我和宋清朗相戀三年描馅,在試婚紗的時候發(fā)現(xiàn)自己被綠了把夸。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,488評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡铭污,死狀恐怖恋日,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情嘹狞,我是刑警寧澤岂膳,帶...
    沈念sama閱讀 36,181評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站磅网,受9級特大地震影響谈截,放射性物質發(fā)生泄漏。R本人自食惡果不足惜知市,卻給世界環(huán)境...
    茶點故事閱讀 41,862評論 3 333
  • 文/蒙蒙 一傻盟、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧嫂丙,春花似錦娘赴、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至隅肥,卻和暖如春竿奏,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背腥放。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評論 1 272
  • 我被黑心中介騙來泰國打工泛啸, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人秃症。 一個月前我還...
    沈念sama閱讀 48,897評論 3 376
  • 正文 我出身青樓候址,卻偏偏與公主長得像,于是被迫代替她去往敵國和親种柑。 傳聞我的和親對象是個殘疾皇子岗仑,可洞房花燭夜當晚...
    茶點故事閱讀 45,500評論 2 359

推薦閱讀更多精彩內容