ORACLE物件型別表
TYPE對於有OOP概念的人來說比較容易理解的。OBJECT就是ORACLE中的物件型別。
SQL> CREATE TYPE T_NAME AS OBJECT(
2 COL1 NUMBER,
3 COL2 VARCHAR2(60)
4 );
5 /
Type created
物件型別表有兩個使用方法:
1、只有一個物件型別欄位的表.
SQL> CREATE TABLE TEST1 OF T_NAME;
Table created
SQL> DESC TEST1;
Name Type Nullable Default Comments
---- ------------ -------- ------- --------
COL1 NUMBER Y
COL2 VARCHAR2(60) Y
SQL> INSERT INTO TEST1 VALUES(1,'1');
1 row inserted
SQL> SELECT * FROM TEST1;
COL1 COL2
---------- ------------------------------------------------------------
1 1
--USER_TABLES檢視查詢不到TEST1
SQL> SELECT TABLE_NAME FROM USER_TABLES WHERE TABLE_NAME='TEST1';
TABLE_NAME
------------------------------
--USER_USER_TAB_COLUMNS檢視可以找到TEST1
SQL> SELECT COLUMN_NAME FROM USER_TAB_COLUMNS WHERE TABLE_NAME='TEST1';
COLUMN_NAME
------------------------------
COL1
COL2
--USER_OBJECTS檢視可以找到TEST1,型別為TABLE
SQL> SQL> SELECT OBJECT_NAME,OBJECT_TYPE FROM USER_OBJECTS WHERE OBJECT_NAME='TEST2';
OBJECT_NAME OBJECT_TYPE
-------------------------------------------------------------------------------- ------------------
TEST2 TABLE
;
OBJECT_NAME OBJECT_TYPE
-------------------------------------------------------------------------------- ------------------
TEST1 TABLE
2、除物件型別還有其他型別(varchar2等)欄位.
SQL> CREATE TABLE TEST2(ID NUMBER,OBJ T_NAME);
Table created
SQL> INSERT INTO TEST2 VALUES(1,T_NAME(1,'1'));
1 row inserted
SQL> INSERT INTO TEST2 VALUES(1,T_NAME(2,'2'));
1 row inserted
SQL> select t.id,t.obj.col1,t.obj.col2 from test2 t;
ID OBJ.COL1 OBJ.COL2
---------- ---------- ------------------------------------------------------------
1 1 1
1 2 2
SQL> SELECT TABLE_NAME FROM USER_TABLES WHERE TABLE_NAME='TEST2';
TABLE_NAME
------------------------------
TEST2
SQL> SELECT COLUMN_NAME FROM USER_TAB_COLUMNS WHERE TABLE_NAME='TEST2';
COLUMN_NAME
------------------------------
ID
OBJ
如果理解物件導向的概念,物件型別表其實可以發揮CLASS的作用,如果存在多個結構相同的表,可以選擇這種處理。但是要注意和普通表的區別。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/756652/viewspace-242448/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORACLE日期型別Oracle型別
- Oracle資料型別對應Java型別Oracle資料型別Java
- Oracle 資料型別Oracle資料型別
- Oracle 11G DBMS_REDEFINITION修改表資料型別Oracle資料型別
- 揭秘Python:物件型別列印Python物件型別
- JS中資料型別、內建物件、包裝型別物件、typeof關係JS資料型別物件
- 【轉】ORACLE資料型別Oracle資料型別
- Oracle anydata資料型別Oracle資料型別
- ORACLE NUMBER資料型別Oracle資料型別
- Oracle DG Standby Database型別OracleDatabase型別
- JS物件導向Object型別JS物件Object型別
- typescript 介面和物件型別(四)TypeScript物件型別
- 表連線型別型別
- 讀取oracle long型別及判斷是否自動分割槽表Oracle型別
- Oracle OCP(19):資料型別Oracle資料型別
- oracle數值型別漫談Oracle型別
- Oracle的number資料型別Oracle資料型別
- 《JavaScript物件導向精要》之一:基本型別和引用型別JavaScript物件型別
- JavaScript獲取物件資料型別JavaScript物件資料型別
- php中物件是引用型別嗎?PHP物件型別
- NumPy之:資料型別物件dtype資料型別物件
- Oracle基本資料型別儲存格式淺析——RAW型別Oracle資料型別
- php型別比較表PHP型別
- Oracle 12cbigfile表空間物件遷移Oracle物件
- Oracle字串資料型別簡述Oracle字串資料型別
- Oracle實驗(05):時間型別Oracle型別
- JavaScript內建物件--Error型別詳解JavaScript物件Error型別
- 物件導向--內部屬性型別物件型別
- 從原始資料型別到值物件資料型別物件
- Javascript中的事件物件和事件型別JavaScript事件物件型別
- Oracle和sqlserver資料型別對應OracleSQLServer資料型別
- Oracle 修改欄位型別和長度Oracle型別
- Qt元物件系統自帶型別與註冊型別的判斷QT物件型別
- oracle 使用sql查詢表註釋和列註釋及資料型別等OracleSQL資料型別
- JavaScript物件導向程式設計——Array型別JavaScript物件程式設計型別
- JavaScript 基礎 (二) - 引用資料型別 (物件)JavaScript資料型別物件
- JavaScript 節點物件的型別與名稱JavaScript物件型別
- JS型別判斷、物件克隆、陣列克隆JS型別物件陣列