首頁 > 資料庫 > mysql教程 > 如何從 Oracle 表中取得特定列名,排除某些列?

如何從 Oracle 表中取得特定列名,排除某些列?

Mary-Kate Olsen
發布: 2025-01-24 17:41:11
原創
801 人瀏覽過

How to Fetch Specific Column Names from an Oracle Table, Excluding Certain Columns?

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 表名和列名通常存儲為大寫。
  • 在查詢中提供用戶輸入時,務必防止 SQL 注入。

以上是如何從 Oracle 表中取得特定列名,排除某些列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板