近期因專案需求,我開始接觸 Oracle Database。在此之前,我一直以 MSSQL 與 PostgreSQL 為主,不論是透過 SSMS(SQL Server Management Studio)或 pgAdmin 操作,都算是得心應手。
然而,一切在我第一次用 DBeaver 連 Oracle 時,陷入了一場意想不到的「新手地獄」。
🐻問題情境
當我安裝好 Oracle Database Free 23ai 與 DBeaver(Version 25.1.0.202506011722),滿心期待地輸入帳號密碼(無論是 SYSTEM 或自建的帳號)建立連線時,卻總是遇到這兩行熟悉又詭異的錯誤訊息:
ORA-00604: 遞迴 SQL 層級 1 發生錯誤
ORA-01756: 引號字串未以恰當方式終止
最怪的是,我用 SQL*Plus 登入完全正常。只有在 DBeaver 中會出現問題。
🐻排查過程
我當下毫不猶豫地請教萬能的 ChatGPT 哥。根據錯誤訊息「ORA-00604:遞迴 SQL」與「ORA-01756:引號未結束」,他給出一連串方向:
- 是不是登入時有觸發器(AFTER LOGON TRIGGER)?
- 是不是角色沒授權?
- 是不是沒設 default tablespace?
- 是不是 listener 沒有啟動?
- JDBC URL 是不是寫錯?
我一項項檢查下來,全都沒問題。SQL*Plus 一切正常,唯獨 DBeaver 死活連不上。這過程真的是讓人懷疑人生。
🐻解法竟然是...
就在即將放棄之際,我回想起過去還沒有 ChatGPT 的時代,我們都是靠關鍵字在網海中翻找討論串。
「不然試試老派的搜尋好了。」
一查就找到國外論壇的標題:
Oracle connection fail if switch UI language to Traditional Chinese
什麼?原來是語言設定的問題!?
我打開 DBeaver GUI,進入:


將介面語言從「繁體中文」改成「English
」,然後重啟 DBeaver,用完全一樣的設定重新連線──
連上了!完!全!沒!事!
🐻返璞歸真
這次的錯誤,其實單純得讓人傻眼──只是 DBeaver 對繁體中文語系支援不足,在連線 Oracle 時執行內部 SQL 發生語法錯誤而已。這麼基本的功能,在 2025 年的今天依然存在 bug,簡體中文與英文都沒問題,唯獨繁體踩雷,實在讓人哭笑不得。
也不是 ChatGPT 的錯。它給出的方向合理、技術上有根據,但這類非預期的工具行為──尤其與 GUI 語系、平台兼容性有關的 bug,本來就很難被語言模型掌握,因為這類問題多半藏在論壇留言或 issue tracker 中,鮮少有明確文件說明,更別說精確地出現在訓練資料裡。
而真正救了我的是最原始的方式:打開 Google,輸入錯誤訊息與關鍵字,在 Stack Overflow 和 GitHub issue 裡挖到老外的留言,才終於破案。
簡單的說,就是太依賴 ChatGPT,有時候,真的得回到最基本的技能:關鍵字搜尋。
這個坑,踩過一次就不會忘了。