SELECT
OBJECT_NAME AS 表名,
CREATED AS 創建時間,
STATUS AS 狀態
FROM USER_OBJECTS
WHERE OBJECT_TYPE = 'TABLE'
AND OBJECT_NAME = 'YOUR_TABLE_NAME'; -- 表名必須大寫
SELECT OWNER, OBJECT_NAME, CREATED, LAST_DDL_TIME
FROM ALL_OBJECTS
WHERE OBJECT_TYPE = 'TABLE'
AND OBJECT_NAME = 'YOUR_TABLE_NAME';
SELECT
t.TABLE_NAME,
t.TABLESPACE_NAME,
t.CREATED,
u.USERNAME AS OWNER
FROM USER_TABLES t
JOIN USER_USERS u ON 1=1
WHERE t.TABLE_NAME = 'YOUR_TABLE_NAME';
| 誤區 | 正確認知 |
|---|---|
用 USER_TABLES 查創建時間 | USER_TABLES 無 CREATED 列,必須用 USER_OBJECTS 或 ALL_OBJECTS |
| 表名用小寫/混合大小寫查詢 | Oracle 非加引號標識符統一轉大寫存儲,查詢必須大寫 |
以為 CREATED 是索引創建時間 | USER_OBJECTS 每行對應一個對象,表與索引是不同行,各有各的 CREATED |
一條標準 SQL:SELECT CREATED FROM USER_OBJECTS WHERE OBJECT_NAME='TABLE_NAME' AND OBJECT_TYPE='TABLE'。注意表名大寫,若需創建者請查 ALL_OBJECTS.OWNER(需權限)。