將檔案匯入資料表
⌘⇧I 匯入 CSV、TSV、JSON、JSONL、XLSX與SQL 檔案。SQL 檔案依陳述式執行,支援 .sql.gz 傾印和以 GO 分隔的 SQL Server 指令碼。其他格式載入現有資料表,或根據檔名建立新資料表並從檔案取得欄位;Excel 活頁簿匯入第一個工作表。
每個欄位會進行對應,除非關閉該選項,否則匯入在同一交易中執行。某列失敗時,可選擇停止並復原、停止但保留已匯入內容,或跳過該列繼續,之後將跳過列的報告儲存為 CSV。


儲存對應與編碼
TablePro 記住每個資料表的 CSV、JSON 和 Excel 匯入對應,Match by Name 或 Match by Position 可一鍵對應全部欄位;依位置配對適用於欄位順序來自檔案的 CSV 和 Excel。CSV 和 SQL 匯入支援 UTF-16,以及 Shift JIS、GB 18030、Big5、EUC-KR 等日文、中文與韓文編碼。
匯出資料表與結果
⌘⇧E 將勾選的資料表和檢視表匯出為 CSV、JSON、SQL、XLSX、Markdown、HTML與XML。每項在寫入時從資料庫串流讀取,不受資料格線列數上限影響;SQL 引擎允許各資料表獨立設定 WHERE 子句、列數限制和所選欄位。SQL 匯出可包含結構、使用 gzip 壓縮及分割檔案,Excel 為每個資料表建立單獨工作表。MongoDB 集合也可匯出為 mongosh 指令碼,MongoDB 和 Redis 不提供 SQL 匯出。
Export Results 寫入查詢結果;被列數上限截斷的結果會重新執行並完整串流匯出。Parquet 匯出由 Settings > Plugins 中安裝的免費外掛程式提供,每個資料表寫入一個檔案。


資料檔案:無須資料庫即可處理檔案
開啟、搜尋與清理
從 Finder 或使用 ⌘O 開啟 CSV、TSV、其他分隔文字檔、JSON 或 JSON Lines,Data Files 視窗會將其顯示為可編輯資料表。可使用資料格線篩選列篩選、搜尋所有欄位、使用正規表示式尋找取代,並用 Fill Down、Trim Whitespace、Change Case 和 Remove Duplicate Rows 清理。Excel 活頁簿依工作表分分頁開啟,.csv.gz 等壓縮檔也可開啟,兩者均唯讀。
視窗在私有副本上操作,⌘S 以原格式寫回檔案,未修改的列保持原樣。


查看欄位統計後匯出或匯入
欄位統計顯示空值數、相異值數、範圍和最常見的值;點選某值可依該值篩選檔案。檔案準備好後,可匯出為其他格式,或用 Import into Table 傳送至已開啟連線上的資料表。


使用引擎原生工具備份
Backup Dump 和 Restore Dump 透過 pg_dump、mysqldump、mongodump、sqlite3、sqlpackage與DuckDB 運作,使用連線的 SSH 通道和 SSL 設定,因此堡壘主機後的伺服器無須第二條通道。除 DuckDB 外,這些都是需自行安裝的命令列工具;DuckDB 自行將傾印寫為資料庫檔案或 Parquet 檔案夾。
在 Oracle、Google BigQuery與Snowflake 上,Server-Side Export 讓伺服器直接匯出至 Oracle Data Pump 工作、Snowflake stage 或 Cloud Storage 儲存桶,不會將資料下載至 Mac。
- Backup Dump 及其工具
- PostgreSQL (pg_dump)、MySQL (mysqldump)、SQL Server (sqlpackage)、SQLite (sqlite3)、MongoDB (mongodump)、MariaDB (mysqldump)、Amazon Redshift (pg_dump)、DuckDB (DuckDB)、libSQL (sqlite3)


作為資料庫的檔案
SQLite 和 DuckDB 檔案從 Finder 以連線形式開啟。DuckDB 也可將 Parquet、CSV 和 JSON 檔案讀取為唯讀檢視表,因此 .parquet 檔案會作為 DuckDB 連線開啟,而非進入 Data Files。SSH 伺服器上的 SQLite 資料庫可透過需要伺服器安裝 Python 3.6 或更新版本的小型代理直接存取,或開啟為唯讀副本。
.sql 檔案以查詢分頁開啟並儲存回磁碟,Beancount 帳本以一組唯讀資料表開啟。
從一個資料庫到另一個資料庫
在兩個連線之間移動資料表或列無須中間檔案。Copy To 和 Transfer To 可直接操作,也支援跨引擎,並在執行前顯示將寫入的內容。
在 iPhone 與 iPad 上
iPhone 與 iPad App 從已載入的列中,將列和查詢結果複製或分享為 JSON、CSV 或 SQL INSERT 陳述式。複製內容僅留在該裝置剪貼簿,不會與其他裝置共用。
透過捷徑的 Add Row to Table 和 Add Rows to Table 動作可匯入列,接受 JSON 或 CSV 文字或檔案,並遵循連線的安全模式。iPhone 與 iPad 不提供匯入面板、檔案匯出、Data Files 視窗或備份。
支援範圍
| 能力 |
|---|
| 將檔案匯入資料表Mac: 免費iPhone與iPad: 透過捷徑從 JSON 或 CSV 匯入 |
| 儲存對應、依名稱與位置配對Mac: 免費iPhone與iPad: 不支援 |
| 將資料表和結果匯出為檔案Mac: 免費iPhone與iPad: 複製或分享為 JSON、CSV 或 SQL INSERT |
| Parquet 匯出外掛程式Mac: 免費iPhone與iPad: 不支援 |
| 資料檔案視窗Mac: 免費iPhone與iPad: 不支援 |
| 傾印備份與還原Mac: 免費iPhone與iPad: 不支援 |
| 伺服器端匯出Mac: 免費iPhone與iPad: 不支援 |
| SQLite 與 DuckDB 檔案Mac: 免費iPhone與iPad: 裝置上的檔案,或記憶體中的 DuckDB |
| 透過 SSH 存取 SQLite 檔案Mac: 免費iPhone與iPad: 不支援 |
值得了解的限制
- SQL 匯出預設在每個資料表前包含 DROP TABLE IF EXISTS,除非取消勾選。因此,在需要保留資料表的資料庫上執行檔案前,請檢查選項。
- Backup Dump 使用自行安裝的命令列工具,僅支援列出的引擎。工具透過環境或暫存檔取得密碼,sqlpackage 例外:它在命令列接收 SQL Server 密碼,Mac 上的其他程序可以讀取;TablePro 會在啟動前徵求確認。
- Restore Dump 會取代 MySQL 或 MariaDB 傾印中的資料表。其他引擎不會取代已存在的物件,SQL Server 的
.bacpac需要空資料庫。 - 透過 SSH 開啟資料庫檔案僅支援 SQLite。
- S3 的 httpfs、Iceberg、Delta 等非內建 DuckDB 擴充功能,會在查詢首次需要時從 DuckDB 自有伺服器下載。
- 目前 App Store 版本的捷徑動作僅以 UTF-8 讀取 CSV 和 JSON,CSV 僅支援 LF 換行。