程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> ORACLE_創建和管理表

ORACLE_創建和管理表

編輯:Oracle教程

ORACLE_創建和管理表




ORACLE_創建和管理表

①常見的數據庫對象
表:基本的數據存儲集合,由行和列組成。
視圖:從表中抽出的邏輯上相關的數據集合。
序列:提供有規律的數值。
索引:提高查詢的效率
同義詞:給對象起別名

②Oracle 數據庫中的表
1.用戶定義的表:
用戶自己創建並維護的一組表,包含了用戶所需的信息
如:SELECT * FROM user_tables;查看用戶創建的表
2.數據字典:
由 Oracle Server 自動創建的一組表
包含數據庫信息

③查詢數據字典
查看用戶定義的表.
SELECT table_name FROM user_tables ;
查看用戶定義的各種數據庫對象
SELECT DISTINCT object_type FROM user_objects ;
查看用戶定義的表, 視圖, 同義詞和序列
SELECT * FROM user_catalog

④表名和列名命名規則:
1.必須以字母開頭
2.必須在 1–30 個字符之間
3.必須只能包含 A–Z, a–z, 0–9, _, $, 和 #
4.必須不能和用戶定義的其他對象重名
5.必須不能是Oracle 的保留字

⑤CREATE TABLE 語句
必須具備:
1.CREATE TABLE權限
2.存儲空間
CREATE TABLE [schema.]table
(column datatype [DEFAULT expr][, ...]);

3.必須指定:
表名
列名, 數據類型, 尺寸

4.數據類型:描述
VARCHAR2(size):可變長字符數據
CHAR(size):定長字符數據
NUMBER(p,s):可變長數值數據
DATE:日期型數據
LONG:可變長字符數據,最大可達到2G
CLOB:字符數據,最大可達到4G
RAW (LONG RAW):原始的二進制數據
BLOB:二進制數據,最大可達到4G
BFILE:存儲外部文件的二進制數據,最大可達到4G
ROWID:行地址

5.使用子查詢創建表
使用 AS subquery 選項,將創建表和插入數據結合起來
CREATE TABLE table
[(column, column...)]
AS subquery;
指定的列和子查詢中的列要一一對應
通過列名和默認值定義列

注:原來表中的數據會插入到新創建的表中,若不需要數據,添加一個FALSE條件即可

⑥ALTER TABLE 語句
1.使用 ALTER TABLE 語句追加, 修改, 或刪除列的語法
追加列
ALTER TABLE table
ADD (column datatype [DEFAULT expr]
[, column datatype]...);

修改列
ALTER TABLE table
MODIFY (column datatype [DEFAULT expr]
[, column datatype]...);

注:如果列中有數據是不能修改類型的,默認值只對後添加的數據有效

刪除列
ALTER TABLE table
DROP COLUMN column_name;

重命名列
ALTER TABLE table_name
RENAME COLUMM old_column_name TO new_column_name

設置列不可用
ALTER TABLE table_name
set unused COLUMM column_name

⑦刪除表
數據和結構都被刪除
所有正在運行的相關事務被提交
所有相關索引被刪除
DROP TABLE 語句不能回滾

DROP TABLE table_name;

⑧清空表
TRUNCATE TABLE 語句:
刪除表中所有的數據
釋放表的存儲空間
TRUNCATE語句不能回滾
可以使用 DELETE 語句刪除數據,可以回滾

TRUNCATE TABLE table_name;

⑨改變對象的名稱
執行RENAME語句改變表, 視圖, 序列, 或同義詞的名稱
必須是對象的擁有者

RENAME old_object_name TO new_object_name;

注:以上DDL語言都不能回滾,執行完就默認提交

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved