一.數據控制語句 (DML) 部分 1.INSERT (往數據表裡插入記錄的語句) INSERT INTO 表名(欄位名1, 欄位名2, ……) VALUES ( 值1, 值2, ……); INSERT INTO 表名(欄位名1, 欄位名2, ……) SELECT (欄位名1, 欄位名2, ……) ...
一.數據控制語句 (DML) 部分
1.INSERT (往數據表裡插入記錄的語句)
INSERT INTO 表名(欄位名1, 欄位名2, ……) VALUES ( 值1, 值2, ……);
INSERT INTO 表名(欄位名1, 欄位名2, ……) SELECT (欄位名1, 欄位名2, ……) FROM 另外的表名;
2.DELETE (刪除數據表裡記錄的語句)DELETE FROM表名 WHERE 條件;
TRUNCATE 命令, 它可以釋放占用的數據塊表空間
TRUNCATE TABLE 表名;
此操作不可回退.
3.UPDATE (修改數據表裡記錄的語句)UPDATE表名 SET 欄位名1=值1, 欄位名2=值2, …… WHERE 條件;
二.數據定義(DDL) 部分
1.CREATE (創建表, 索引, 視圖, 同義詞, 過程, 函數, 資料庫鏈接等)
ORACLE常用的欄位類型有
CHAR 固定長度的字元串
VARCHAR2 可變長度的字元串
NUMBER(M,N) 數字型M是位數總長度, N是小數的長度
DATE 日期類型
創建表時可以給欄位加上約束條件
例如: 不允許重覆 UNIQUE, 關鍵字 PRIMARY KEY
2.ALTER(改變表, 索引, 視圖等)改變表的名稱
ALTER TABLE 表名1 TO 表名2;在表的後面增加一個欄位
ALTER TABLE表名 ADD 欄位名 欄位名描述;修改表裡欄位的定義描述
ALTER TABLE表名 MODIFY欄位名 欄位名描述;給表裡的欄位加上約束條件
ALTER TABLE 表名 ADD CONSTRAINT 約束名 PRIMARY KEY (欄位名);
ALTER TABLE 表名 ADD CONSTRAINT 約束名 UNIQUE (欄位名);
3.DROP(刪除表, 索引, 視圖, 同義詞, 過程, 函數, 資料庫鏈接等)
刪除表和它所有的約束條件
DROP TABLE 表名 CASCADE CONSTRAINTS;
4.TRUNCATE (清空表裡的所有記錄, 保留表的結構)
TRUNCATE 表名;
三.查詢語句 (SELECT) 部分
SELECT欄位名1, 欄位名2, …… FROM 表名1, [表名2, ……] WHERE 條件;
查詢語句可以嵌套
例如: SELECT …… FROM (SELECT …… FROM表名1, [表名2, ……] WHERE 條件) WHERE 條件2;
每個表都有一個隱含的欄位ROWID, 它標記著記錄的唯一性.
四.ORACLE里常用的數據對象 (SCHEMA)
1.索引 (INDEX)
CREATE INDEX 索引名ON 表名 ( 欄位1, [欄位2, ……] );
ALTER INDEX 索引名 REBUILD;
2.視圖 (VIEW)
CREATE VIEW 視圖名AS SELECT …. FROM …..;
ALTER VIEW視圖名 COMPILE;
3.同義詞 (SYNONMY)
CREATE SYNONYM同義詞名FOR 表名;
CREATE SYNONYM同義詞名FOR 表名@資料庫鏈接名;
4.資料庫鏈接 (DATABASE LINK)CREATE DATABASE LINK資料庫鏈接名CONNECT TO 用戶名 IDENTIFIED BY 密碼 USING ‘資料庫連接字元串’;
五.許可權管理 (DCL) 語句
1.GRANT 賦於許可權
GRANT CONNECT, RESOURCE TO 用戶名;
GRANT SELECT ON 表名 TO 用戶名;
GRANT SELECT, INSERT, DELETE ON表名 TO 用戶名1, 用戶名2;
2.REVOKE 回收許可權
REVOKE CONNECT, RESOURCE FROM 用戶名;
REVOKE SELECT ON 表名 FROM 用戶名;
REVOKE SELECT, INSERT, DELETE ON表名 FROM 用戶名1, 用戶名2;