把表放在或取出數(shù)據(jù)庫的內(nèi)存區(qū)
ALTER TABLE 表名 CACHE;
ALTER TABLE 表名 NOCACHE;
3.DROP (刪除表, 索引, 視圖, 同義詞, 過程, 函數(shù), 數(shù)據(jù)庫鏈接等)
刪除表和它所有的約束條件
DROP TABLE 表名 CASCADE CONSTRAINTS;
4.TRUNCATE (清空表里的所有記錄, 保留表的結(jié)構(gòu))
TRUNCATE 表名;
三.查詢語句 (SELECT) 部分
SELECT字段名1, 字段名2, …… FROM 表名1, [表名2, ……] WHERE 條件;
字段名可以帶入函數(shù)
例如: COUNT(*), MIN(字段名), MAX(字段名), AVG(字段名), DISTINCT(字段名),
TO_CHAR(DATE字段名,'YYYY-MM-DD HH24:MI:SS')
NVL(EXPR1, EXPR2)函數(shù)
解釋:
IF EXPR1=NULL
RETURN EXPR2
ELSE
RETURN EXPR1
DECODE(AA﹐V1﹐R1﹐V2﹐R2....)函數(shù)
解釋:
IF AA=V1 THEN RETURN R1
IF AA=V2 THEN RETURN R2
..…
ELSE
RETURN NULL
LPAD(char1,n,char2)函數(shù)
解釋:
字符char1按制定的位數(shù)n顯示,不足的位數(shù)用char2字符串替換左邊的空位
字段名之間可以進(jìn)行算術(shù)運算
例如: (字段名1*字段名1)/3
查詢語句可以嵌套
例如: SELECT …… FROM
(SELECT …… FROM表名1, [表名2, ……] WHERE 條件) WHERE 條件2;
兩個查詢語句的結(jié)果可以做集合操作
例如: 并集UNION(去掉重復(fù)記錄), 并集UNION ALL(不去掉重復(fù)記錄), 差集MINUS, 交集INTERSECT
分組查詢
SELECT字段名1, 字段名2, …… FROM 表名1, [表名2, ……] GROUP BY字段名1
[HAVING 條件] ;
兩個以上表之間的連接查詢
SELECT字段名1, 字段名2, …… FROM 表名1, [表名2, ……] WHERE
表名1.字段名 = 表名2. 字段名 [ AND ……] ;
SELECT字段名1, 字段名2, …… FROM 表名1, [表名2, ……] WHERE
表名1.字段名 = 表名2. 字段名(+) [ AND ……] ;
有(+)號的字段位置自動補空值
查詢結(jié)果集的排序操作, 默認(rèn)的排序是升序ASC, 降序是DESC
SELECT字段名1, 字段名2, …… FROM 表名1, [表名2, ……]
ORDER BY字段名1, 字段名2 DESC;
字符串模糊比較的方法
INSTR(字段名, ‘字符串’)>0
字段名 LIKE ‘字符串%’ [‘%字符串%’]
每個表都有一個隱含的字段ROWID, 它標(biāo)記著記錄的唯一性.
四.ORACLE里常用的數(shù)據(jù)對象 (SCHEMA)
1.索引 (INDEX)
CREATE INDEX 索引名ON 表名 ( 字段1, [字段2, ……] );
ALTER INDEX 索引名 REBUILD;
一個表的索引最好不要超過三個 (特殊的大表除外), 最好用單字段索引, 結(jié)合SQL語句的分析執(zhí)行情況,
也可以建立多字段的組合索引和基于函數(shù)的索引
ORACLE8.1.7字符串可以索引的最大長度為1578 單字節(jié)
ORACLE8.0.6字符串可以索引的最大長度為758 單字節(jié)
ORACLE DOC上說字符串最大可以建索引的長度約是:數(shù)據(jù)塊的大小(db_block_size)*40%
2.視圖 (VIEW)
CREATE VIEW 視圖名AS SELECT …. FROM …..;
ALTER VIEW視圖名 COMPILE;
視圖僅是一個SQL查詢語句, 它可以把表之間復(fù)雜的關(guān)系簡潔化.
3.同義詞 (SYNONMY)
CREATE SYNONYM同義詞名FOR 表名;
CREATE SYNONYM同義詞名FOR 表名@數(shù)據(jù)庫鏈接名;
4.數(shù)據(jù)庫鏈接 (DATABASE LINK)
CREATE DATABASE LINK數(shù)據(jù)庫鏈接名CONNECT TO 用戶名 IDENTIFIED BY 密碼 USING ‘?dāng)?shù)據(jù)庫連接字符串’;
數(shù)據(jù)庫連接字符串可以用NET8 EASY CONFIG或者直接修改TNSNAMES.ORA里定義.
數(shù)據(jù)庫參數(shù)global_name=true時要求數(shù)據(jù)庫鏈接名稱跟遠(yuǎn)端數(shù)據(jù)庫名稱一樣
數(shù)據(jù)庫全局名稱可以用以下命令查出
SELECT * FROM GLOBAL_NAME;
查詢遠(yuǎn)端數(shù)據(jù)庫里的表
SELECT …… FROM 表名@數(shù)據(jù)庫鏈接名;
五.權(quán)限管理 (DCL) 語句
1.GRANT 賦于權(quán)限
常用的系統(tǒng)權(quán)限集合有以下三個:
CONNECT(基本的連接), RESOURCE(程序開發(fā)), DBA(數(shù)據(jù)庫管理)
常用的數(shù)據(jù)對象權(quán)限有以下五個:
本新聞共
3頁,當(dāng)前在第
2頁
1 2 3