最近要考試稽寒,整理一波Oracle數(shù)據(jù)庫的課堂筆記趟章。
1、數(shù)據(jù)庫(Database)是按照數(shù)據(jù)結構來組織宏侍、存儲和管理數(shù)據(jù)的倉庫蜀漆。
2、Oracle數(shù)據(jù)庫的優(yōu)點:
可用性強
可擴展性強
數(shù)據(jù)安全性強
穩(wěn)定性強
3绷耍、Oracle數(shù)據(jù)庫是網(wǎng)絡數(shù)據(jù)庫蠕嫁,需要配置服務器端和客戶端
在開始菜單中毯盈,Oracle菜單——配置和移植工具——Net Manager
服務器端配置:監(jiān)聽器
客戶端配置:服務命名
4、修改服務器端設置需要重新啟動監(jiān)聽服務
5赘阀、常見的數(shù)據(jù)庫用戶
sys 超級管理員,密碼安裝時指定
system 普通管理員幅慌,密碼同sys
scott 普通用戶(一般教學用)轰豆,密碼tiger
6、創(chuàng)建用戶:
CREATE USER scott IDENTIFIED BY tiger;
修改用戶:
ALTER USER scott IDENTIFIED BY tiger1;
刪除用戶:
DROP USER scott;
7骂租、授權系統(tǒng)權限:
GRANT 權限 TO user;
收回權限:
REVOKE 權限 FROM user;
8斑司、創(chuàng)建角色:
CREATE ROLE manager;
為角色賦予權限:
GRANT create table TO manager;
將角色賦予用戶:
GRANT manager TO shiyu;
9、系統(tǒng)權限:
CREATE SESSION(創(chuàng)建會話)
CREATE TABLE(創(chuàng)建表)
CREATE SEQUENCE(創(chuàng)建序列)
CREATE VIEW(創(chuàng)建視圖)
CREATE PROCEDURE(創(chuàng)建過程)
10互站、一個數(shù)據(jù)庫可以包含多個表空間僵缺,一個表空間只能屬于一個數(shù)據(jù)庫
一個表空間包含多個數(shù)據(jù)文件,一個數(shù)據(jù)文件只能屬于一個表空間
表這空間可以劃分成更細的邏輯存儲單元
11标捺、創(chuàng)建表空間
CREATE TABLESPACE tablespacename DATAFILE ‘存放數(shù)據(jù)文件路徑以及文件名稱.dbf’ SIZE? 20M ---文件存儲大腥嗟帧;
新建用戶指定默認表空間
create user username identified by password default tablespace tablespacename;
12闺兢、命名規(guī)則:
表名和列名:
必須以字母開頭
必須在 1–30 個字符之間
必須只能包含 A–Z, a–z, 0–9, _, $, 和 #
必須不能和用戶定義的其他對象重名
必須 不能是Oracle 的保留字
13戏罢、創(chuàng)建表:
CREATE TABLE yu(
..........................
);
14、數(shù)據(jù)類型
15桐磁、常用的數(shù)據(jù)類型
字符型
varchar2(n):變長字符串,n代表允許的最大字節(jié)長度我擂,最大4000字節(jié),例如? varchar2(8)
char(n):同上校摩,定長字符串,最大2000字節(jié)互妓,例如 char(8) 坤塞,長度不夠會填充半角空格,查詢效率高
clob:大字符串數(shù)據(jù)珠闰,最大4G 瘫辩,默認數(shù)據(jù)在4000字節(jié)內(nèi),存儲在表段空間中承绸,超過4000字節(jié)就會用LOB段存儲挣轨,查詢效率低
數(shù)字型
number:存儲整型或者浮點型,最大38位精度
number(n):僅存儲整數(shù)荡澎,n代表最大位數(shù) 例如number(4) -9999~9999
number(p,s):存儲浮點數(shù)晤锹,p代表最大精度,s代表小數(shù)位數(shù) 例如 number(6,2)
日期型
date: 【 dd-mm月-yy 】存儲年月日時分秒或衡,精確到秒
timestamp(n):時間戳车遂,精確到納秒,n代表秒后面的位數(shù) 例如 timestamp(3)坡疼,還包括了時區(qū)的信息
Oracle數(shù)據(jù)類型沒有布爾類型true和false
16衣陶、rowid偽列
表數(shù)據(jù)行的物理地址
在插入數(shù)據(jù)時生成
在數(shù)據(jù)庫中是唯一的
17废岂、Oracle數(shù)據(jù)庫中的表
用戶定義的表:
用戶自己創(chuàng)建并維護的一組表
包含了用戶所需的信息
數(shù)據(jù)字典:
由Oracle Server自動創(chuàng)建的一組表
包含數(shù)據(jù)庫信息
18狱意、使用 ALTER TABLE 語句可以:
追加新的列
修改現(xiàn)有的列
為新追加的列定義默認值
刪除一個列
19详囤、(1)使用 ADD 子句追加一個新列
ALTER TABLE dept80
ADD (job_id VARCHAR2(9));
(2)可以修改列的數(shù)據(jù)類型, 尺寸, 和默認值
ALTER TABLE dept80
MODIFY (last_name VARCHAR2(30));
(3)使用 DROP COLUMN 子句刪除不再需要的列
ALTER TABLE? dept80
DROP ( job_id);
(4)刪除表
DROP TABLE dept80;
(5)執(zhí)行RENAME語句改變表, 視圖, 序列, 或同義詞的名稱
RENAME dept TO detail_dept;
TRUNCATE TABLE 語句:
(5)清空表:刪除表中所有的數(shù)據(jù)藏姐,釋放表的存儲空間
TRUNCATE TABLE detail_dept;
TRUNCATE語句不能回滾
可以使用 DELETE 語句刪除數(shù)據(jù)
20该贾、表的閃回操作
通過數(shù)據(jù)字典查看”回收站”信息。
SELECT * FROM user_recyclebin;
還原誤刪除的表兜材。
FLASHBACK TABLE tablenameTO BEFORE DROP;
清空“回收站”
PURGE RECYCLEBIN;
直接一次性刪除表
DROP TABLE tablename PURGE;