PyCharm 的數據庫工具
在軟件開發過程中,是離不開數據庫的,PyCharm 為操作數據庫提供了豐富的功能,可以在不離開PyCharm IDE 的環境下連接不同類型的數據庫,可執行 SQL 腳本、查看結果以及導出導入數據等功能,本節課程將介紹這些常用功能在 PyCharm 中 如何使用。學習本章應該具備數據庫的基礎知識。
1. Database Tools and SQL
PyCharm 中的數據庫管理功能由 Database Toools and SQL 插件支持。該插件支持 DataGrip 中提供的所有功能(DataGrip 是開發人員的獨立數據庫管理環境,也是JetBrains公司旗下的產品):支持查詢、創建和管理各種類型數據庫, 包括 MySQL、PostgreSQL、SQL Server、SQLite、MariaDB、Oracle、Apache Cassandra 等等,其中數據庫可以在本地、在服務器上或云中工作。
為了使用PyCharm 數據庫管理功能,請確保 Databse Tools and SQL 插件是啟用的。
主菜單: PyCharm/Files -> Preference/Settings -> Plugins -> Data
PyCharm 提供 了打開數據庫工具窗口: 主菜單 View -> Tool Windows -> Database
,可以進行一系列的數據庫操作。
2. 連接數據庫
若想進行數據庫操作,必須創建 數據源 連接。以下以連接MySQL為例介紹如何連接數據庫。其它類型數據庫連接基本是類似的,更多細節請參考。
step1: 在數據庫工具窗口中 View -> Tool Windows -> Database
,單擊"Data Source Properties"圖標。
step2: 在"Data Sources and Drivers “對話框中,單擊”+"圖標并選擇 MySQL。然后根據下圖的提示輸入相應的信息。如果沒有事先下載 所選數據庫 JDBC Driver, 點擊窗口底部 Download missing driver files 鏈接直接下載即可。
Tips:每種類型的數據庫的 JDBC Driver 是可以安裝多個不同版本的,除此以外,如上圖顯示:系統也會自動提示更新。如想更改使用版本,在當前窗口 Drivers 下選擇要更改的數據庫類型。
step3: 測試成功后,點擊ok, 新的數據源 MySql 創建成功。查看 Database 與 Service 工具窗口。
3. 執行 SQL 語句
數據庫連接成功后,就可以查詢數據庫的數據了,PyCharm 提供了多種查詢方式。
3.1 Query Console
創建數據源時,將自動創建查詢控制臺, 可以在 Services 工具欄直接點擊 Console 打開。也可以在 Database 工具窗口, 右鍵點擊數據源,選擇 open a query console, 或者按 F4。
鍵入或粘貼要執行的語句在 console,然后執行:
分別執行上面的語句,顯示結果如下:
3.2 從打開文件中執行 SQL 語句
step1: 首先要確保為項目設置了 SQL Dialects, 就是告訴系統以哪種類型的數據庫規則讀取語句與執行語句。因為我們連接的是 MySQL 數據源, 所以選擇MySQL。
主菜單: PyCharm/File -> Preferences/Settings -> Languages & Frameworks -> SQL Dialect
:
step2: 事先準備一個 “.sql” 文件, 或者新建一個".sql" 文件, 文件中包含多條語句。然后運行這個文件。
step3: 會彈出下面的窗口,添加目標數據源:
step4:點擊上圖按鈕 Run, 工具欄 Run 將顯示:
step5: 如果要查看每條語句的結果,在編輯區輸入??( Ctrl + Enter) 執行, 需要先選擇執行語句的Session??梢杂靡呀洿嬖诘?,也可以新創建。
Tips: 數據源連接是物理通信通道。Session 是一種信息交換狀態。單個連接可以有多個 Sessions。當使用客戶端連接到數據庫服務器時,雙方將建立一個 Session 來交換信息。
Step6: 選擇創建一個新 Session后,執行語句工具欄出現。后面與在Query Console 執行語句是一致的。
3.3 從硬盤直接運行文件
在 Database 工具欄中點擊數據源, 然后在上下文菜單中選擇 Run SQL Scripts....
:
在"選擇路徑"窗口中,導航到要應用的 SQL 文件。后面與執行項目中的 .sql 文件是一樣的。
4. 查看結果與編輯數據
執行了 SQL 語句,相應的顯示結果就會顯示在 Services 工具欄,通過工具欄上按鈕可以限制顯示的條數,查看表的定義等等。
可以直接編輯數據在查詢結果中,也可以增刪記錄,并且直接提交到數據庫。
當更新記錄時,選擇 Auto 模式,點擊 Submit, 更新就直接生效了,Commit 與 Rollback 按鈕一直都是不可用狀態。如果選擇 Manual 方式提交, 當有更新時,Submit 與 Commit 都會由灰色不可用變成可用狀態,如果直接點擊 Commit, 更新直接生效;此時如果選擇 Submit, Rollback 按鈕由灰色變成可用狀態,可以點擊它放棄更新,當然也可以繼續選擇Commit, 使更新生效。
5. 導入與導出數據
5.1 導出數據
1. 可以在 Database 工具欄選擇表、視圖直接導出到文件。下圖選擇 tables, 上下文菜單選擇 Dump Data to Files
, 當然也可選擇單個某個表去導出。
在 Dump Data 窗口中選擇保存數據的格式,以及保存路徑。
2. 從結果集選擇導出數據到文件或者剪粘板。前面結果集的顯示都以Table格式顯示, 通過數據提取器的設定能以不同的格式顯示,同樣的格式也可應用于導出。通過點擊導出數據 dump data 按鈕,可以把選中的數據導出。
在打開 Dump Data 窗口, 設定保存格式及路徑等,然后選擇是保存到文件還是剪粘板。
5.2 導入數據
可以在 Database 工具欄選擇數據源, 上下文菜單選擇 Run SQL Scripts...
。
在"選擇路徑"窗口中,導航到要應用的 SQL 文件。然后 Open。
3. 也可以在 Database 工具欄選擇某個表,然后在上下文菜單選擇 Import Data from File
在選擇導航到要應用的 SQL 文件,然后打開,顯示下面導入文件窗口,指定數據各項設置,點擊 OK。
6. 小結
本節主要講了 Database Tools and SQL,其功能是非常強大的,而我們只涉及到一些最常用的功能,這只是其中很小的一部分功能,感興趣同學可查看相關文檔繼續學習。
如果對于數據庫有大量與復雜的操作,筆者建議還是用 DataGrid 或者 Navicat 這些專門的數據庫工具, 在PyCharm 里,我們可以只把Database Tools 作為快速調試數據庫相關代碼,實時查看運行結果的輔助工具。