Cline 是一款開源 AI 編碼代理,可將最先進的 AI 型號直接嵌入到 VS Code 編輯器中。與自動完成工具不同,Cline 是一款真正的編碼代理,能夠理解您的整個程式碼庫、規劃複雜的變更並執行多步驟任務。
上次我們詳細講解了 Oracle MCP 伺服器,並在 MacBook 上使用 Claude,所以這次我們將嘗試在 Windows 上使用 Cline 和 OpenAI API 以自然語言查詢 Oracle 資料庫。
如配置圖所示,我們將首先在 Oracle 雲端基礎架構 (OCI) 上建置一個 Oracle 資料庫,並對其進行配置,使其能夠透過 SQL 與 Windows 通訊。我們還將在 Oracle 資料庫中安裝一個範例模式,以便 AI 可以查詢資料,同時也將配置Logging Analytics ,以便 AI 可以檢索、分析存取和審計日誌並發出警報。
- Oracle 資料庫建立: Oracle Exadata 雲端基礎架構 X11M 建立
- 範例資料輸入:安裝 Oracle 資料庫範例模式
- FastConnect 連線: NEC Inzai 資料中心的 Oracle FastConnect L2 連接
- 日誌分析:擷取並分析相關的 Oracle 資料庫日誌
- 日誌分析:分析資料庫稽核表和使用者表
注意
允許大型語言模型 (LLM) 存取您的資料庫會帶來重大的安全風險:因為 LLM 使用輸入資料來產生回應,因此意外的表或敏感資訊可能會被意外暴露。
為了減輕這些風險,請遵循以下安全措施:
分配最低權限: LLM 使用的資料庫使用者帳戶應具有執行任務所需的最低權限。這種方法限制了 LLM 的存取範圍。
避免生產資料庫存取: LLM 不應被授予直接存取生產資料庫的權限;相反,它應該使用經過清理的唯讀副本或專用資料子集。
審計 LLM 活動:定期審計 LLM 執行的查詢,以偵測異常情況以及存取受限資料的嘗試。為了支援您的稽核工作,SQLcl MCP Server 提供了以下內建監控功能:
會話追蹤:在 VSESSION.MODULE 中輸入正在使用的 MCP 用戶端,在 V$SESSION.ACTION 中輸入 LLM 的名稱。
活動日誌:建立一個名為 DBTOOLS$MCP_LOG 的表,記錄所有互動和 SQL 執行。
查詢辨識: LLM 透過 SQLcl MCP 伺服器工具產生的所有查詢都將包含以下註釋,以便在日誌中輕鬆辨識:/* LLM in use ... */。
有關監控的更多訊息,請參閱監控 SQLcl MCP 伺服器。
若要使用 SQLcl MCP 伺服器,您必須在系統上安裝下列軟體:
Oracle SQLcl、バージョン 25.2.0 以上
Java ランタイム環境 (JRE) バージョン 17 以上
前往下一個SQLcl 下載畫面並下載最新的 SQLcl。
選擇下載的zip檔並點選解壓縮
1)解壓縮
在 Windows 上,使用 tar 指令提取 zip 檔案。
PS C:\Users\opc> tar zxvf .\Downloads\sqlcl-25.2.2.199.0918.zip
x sqlcl/
x sqlcl/bin/
x sqlcl/lib/
・・・
x sqlcl/lib/quartz.jar
x sqlcl/lib/javassist.jar
PS C:\Users\opc>
2)檢查解凍
PS C:\Users\opc> ls *sqlcl
Directory: C:\Users\opc
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 1/1/2023 12:00 AM sqlcl
3)檢查sqlcl目錄
PS C:\Users\opc> ls -l sqlcl
Directory: C:\Users\opc\sqlcl
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 1/1/2023 12:00 AM bin
d----- 1/1/2023 12:00 AM lib
-a---- 1/1/2023 12:00 AM 44 25.2.2.199.0918
-a---- 1/1/2023 12:00 AM 216 LICENSE.txt
-a---- 1/1/2023 12:00 AM 192 NOTICES.txt
-a---- 1/1/2023 12:00 AM 348 THIRD-PARTY-LICENSES.txt
3)檢查sql.exe
sqlcl 指令位於 ./sqlcl/bin。
在 Windows 上,sql.exe 是執行 sqlcl 的指令。
PS C:\Users\opc> ls .\sqlcl\bin\
Directory: C:\Users\opc\sqlcl\bin
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 1/1/2023 12:00 AM 3778 dependencies.txt
-a---- 1/1/2023 12:00 AM 35464 sql
-a---- 1/1/2023 12:00 AM 169472 sql.exe
-a---- 1/1/2023 12:00 AM 152 version.txt
4)sql.exe執行(Java錯誤)
如果出現以下訊息,則可以確認缺少所需的Java版本。
PS C:\Users\opc> .\sqlcl\bin\sql.exe
Oracle SQLcl Console: This application requires a Java Runtime Environment 17.0.5
從Java下載 下載 Java 17.0.5 或更高版本。
這裡我們從最新的 Java SE 開發工具包 21.0.8 下載 x64 安裝程式。
1)執行exe
點擊下載的jdk-21_windows-x64_bin.exe執行。
2)執行安裝
檢查內容並繼續安裝。
3) Install 中〜
4)安裝完成
5)檢查Java版本
在 PowerShell 中檢查 java -version
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
Install the latest PowerShell for new features and improvements! https://aka.ms/PSWindows
PS C:\Users\opc> java -version
java version "21.0.8" 2025-07-15 LTS
Java(TM) SE Runtime Environment (build 21.0.8+12-LTS-250)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.8+12-LTS-250, mixed mode, sharing)
PS C:\Users\opc>
如果sql指令執行沒有錯誤,那就沒問題了。
1)執行sql指令
PS C:\Users\opc> .\sqlcl\bin\sql /nolog
SQLcl: Release 25.2 Production on Sun Aug 24 10:11:54 2025
Copyright (c) 1982, 2025, Oracle. All rights reserved.
SQL>
2)資料庫連線確認
驗證您預先建立的 Oracle 資料庫連線。
PS C:\Users\opc> .\sqlcl\bin\sql system/Password@//10.10.1.2:1521/PDB.clientsubnet.vcnexatokyo.oraclevcn.com
SQLcl: Release 25.2 Production on Sun Aug 24 13:09:40 2025
Copyright (c) 1982, 2025, Oracle. All rights reserved.
Last Successful login time: Sun Aug 24 2025 13:09:42 +00:00
Connected to:
Oracle Database 19c EE High Perf Release 19.0.0.0.0 - Production
Version 19.24.0.0.0
SQL> show con_name
CON_NAME
------------------------------
PDB
Cline 是一款適用於 Visual Studio Code (VS Code) 的開源 AI 程式設計助手,支援 MCP。請為您的 SQLcl MCP 伺服器設定 Cline。
1)SQLcl連接
PS C:\Users\opc> .\sqlcl\bin\sql system/password//10.10.1.2:1521/PDB.clientsubnet.vcnexatokyo.oraclevcn.com
SQLcl: Release 25.2 Production on Sun Aug 24 13:09:40 2025
Copyright (c) 1982, 2025, Oracle. All rights reserved.
Last Successful login time: Sun Aug 24 2025 13:09:42 +00:00
Connected to:
Oracle Database 19c EE High Perf Release 19.0.0.0.0 - Production
Version 19.24.0.0.0
SQL>
2)建立相容 MCP 的已儲存連接
使用以下命令連接到 Oracle 資料庫:
SQL> conn -save cline_mcp -savepwd system/Password@//10.10.1.2:1521/PDB.clientsubnet.vcnexatokyo.oraclevcn.com
Name: cline_mcp
Connect String: //10.10.1.2:1521/PDB.clientsubnet.vcnexatokyo.oraclevcn.com
User: system
Password: ******
Connected.
SQL> exit
3)檢查DBTools目錄
在 Windows 上,SQLcl MCP 伺服器儲存在 %appdata%\Roaming\DBTools 目錄中的連接儲存中,並且您設定的連接資訊在 dbtools.properties 檔案中建立。
PS C:\Users\opc> ls .\AppData\Roaming\DBTools
ディレクトリ: C:\Users\opc\AppData\Roaming\DBTools
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2025/08/24 13:14 connections
PS C:\Users\opc> cat .\AppData\Roaming\DBTools\connections\WPX8HMDrglY19tw9NwENjA\dbtools.properties
name=cline_mcp
type=ORACLE_DATABASE
connectionString=//10.10.1.2\:1521/PDB.clientsubnet.vcnexatokyo.oraclevcn.com
userName=system
4)檢查 MCP 伺服器是否正在執行
一旦 SQLcl MCP 伺服器成功啟動,將顯示帶有啟動時間戳記的確認訊息,表示它已準備好接受來自 MCP 用戶端的連線。
您可以透過檢查終端機中的下列訊息來驗證伺服器是否已準備就緒:
PS C:\Users\opc> .\sqlcl\bin\sql -mcp
---------- MCP SERVER STARTUP ----------
MCP Server started successfully on Sun Aug 24 13:28:12 UTC 2025
Press Ctrl+C to stop the server
----------------------------------------
1)下載 VS Code
2)執行exe
3) Iinstall 開始
4) 安裝過程中
5)安裝完成
1) VS Code 起動
打開 VS Code 並點擊側邊欄中的「擴充」。
2)克萊恩篩選
在搜尋欄中輸入 cline 即可顯示 Cline
3)Cline安裝
按一下“安裝”,然後按一下“信任發布者並安裝”以繼續。
4) VS Cline 畫面
該擴充功能將被安裝並出現在您的側邊欄中。
4)AI註冊介面
設定您的 API 金鑰並選擇您想要的 AI 模型。
這次,我們將嘗試使用預先註冊的 OpenAI API Key。
1) 點選“管理 MCP 伺服器”
在側邊欄中選擇Cline擴展,點選提示框下方的管理MCP服務。
2) MCP Server 畫面
在提示框下方出現的 MCP 伺服器對話方塊中,按一下設定齒輪圖標
3) MCP 伺服器已安裝選項卡螢幕
MCP 伺服器頁面打開,其中已安裝標籤處於選取狀態。
在出現的對話方塊中,按一下設定 MCP 伺服器。
4)cline_mcp_settings.json 檔案螢幕
cline_mcp_settings.json 檔案在右側的 VS Code 編輯器中開啟。
將以下格式的 JSON 設定程式碼片段新增至設定檔:SQLcl 將「PATH/bin/sql」替換為您安裝的 sql 指令的絕對路徑,儲存文件,然後按一下完成。
{
"mcpServers": {
"SQLcl": {
"command": "C:\\Users\\opc\\sqlcl\\bin\\sql",
"args": ["-mcp"],
"disabled": false
}
}
}
在 Windows 中,\(反斜線)是轉義字符,因此寫為 \\。
SQLcl MCP 伺服器及其工具現在列在 MCP 伺服器頁面上。
5) Clien 畫面
SQLcl 被加入到 MCP Server 提示框中。
如果沒有,請重新啟動以使變更生效。
6)如有必要,重新啟動 VS Code。
如有必要,請重新啟動 VS Code 以使變更生效。
如果重新啟動後 MCP Server 提示框中仍然沒有新增 SQLcl,則可能是 cline_mcp_settings.json 中輸入的內容不正確。
將您希望 Cline 用於通訊的語言設定為日文。
以下是一些自然語言請求的範例,可用於透過連接到 SQLcl MCP 伺服器的 MCP 用戶端執行各種資料庫操作。
該查詢之前已使用自然語言的 OpenAI API 進行了回答。
可以看到輸出結果是一樣的。
諮詢詳情
SHスキーマのデータでは、各商品はどれだけ売れましたかしら?上位10を昇順で表示してちょ。
Cline回答
SHスキーマにおける商品別売上(合計金額)の上位10件(昇順)は以下の通りです:
1. Soccer Jersey - 27,933.33
2. Tennis Grip Overgrip Tacky — 34,547.82
3. Cushioned Grip - 60,713.47
4. Practice Tennis Balls - 78,881.08
5. Wide Brim Hat — 84,498.67
6. MLB Official Game Baseball w/ Display Case — 88,756.80
7. Tennis Strings Polyester — 101,214.60
8. Plastic - Beach Cricket Ball - 106,468.41
9. Cricket - Athletic Guard Cup — 120,395.81
10. Tennis Strings Hybrids — 148,558.92
我們讓他們建立一個 ER 圖。他們將使用PlantUML格式。
您可以看到 HR 和 OE 模式是連結的,因為它們透過外鍵關聯。
諮詢詳情
databaseへ接続して、HRスキーマとOEスキーマのER図を作成してください
Cline回答
HRスキーマおよびOEスキーマのER図をPlantUML形式(hr_oe_er.puml)で作成しました。このファイルをPlantUML対応ツールで開くことで、ER図を画像として可視化でき ます。
テーブル間のリレーション(外部キー)もすべて反映されています。
もし画像化や他形式での出力が必要な場合はご指示ください。
透過在 VS Code 外掛程式 PlantUML 中啟用預覽功能,可以顯示 PlantUML 格式的圖表。
這次,我嘗試將 .puml 檔案的內容貼到 PlantUML 線上伺服器( https://www.plantuml.com/plantuml/ )中,這樣您就可以當場繪製圖表。
![21_客戶端查詢-ER圖建立2.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F109087%2F97243