Oracle 查詢以提取列名
問題:
修改 MySQL 查詢,以便從 Oracle 11g 數據庫中的表中提取列名,特別是要排除某些列並指定模式。目前尚不清楚是否可以使用表空間名稱代替模式名稱。
解決方案:
1. MySQL 查詢的 Oracle 等效項:
MySQL 的 information_schema.COLUMNS 在 Oracle 中的等效項是 USER_TAB_COLS(用於當前用戶擁有的表),或 ALL_TAB_COLS 或 DBA_TAB_COLS(用於所有用戶擁有的表)。
2. 模式與表空間:
表空間不等同於模式。表空間指的是數據庫對象的物理存儲,而模式指的是數據庫對象的邏輯分組。
3. Oracle 查詢示例:
這是一個修改後的 Oracle 查詢,用於從 users 表中提取列名,排除指定的列並指定模式:
<code class="language-sql">SELECT column_name FROM all_tab_cols WHERE table_name = 'USERS' AND owner = '[_db]' AND column_name NOT IN ('PASSWORD', 'VERSION', 'ID')</code>
注意:
以上是如何從 Oracle 表中取得特定列名,排除某些列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!