🍆

SupabaseのImport data via spreadsheet機能は使わない方がいいかもしれない【文字化けしちゃう】

2024/02/28に公開

SupabaseのGUIでテーブルを作成する際に、 Import data via spreadsheet という機能が提供されています。これはCSVファイルを元にテーブル作成とデータ挿入をしてくれる便利な機能です。

しかし、これが地味に罠だったので共有します。

UTF-8のCSVファイルをUTF-8のデータベースにインポートしたが文字化けしてしまった。

上記の画像はデータベースからCSVファイルとしてダウンロードしたものです。
文字化けしてしまっていることがお分かり頂けるかと思います。(キャプチャを残していませんが、Supabase GUIのテーブル閲覧でも同様の文字化けを確認しました。)

インポートの時点で文字化けが発生した可能性が高いものと思います。
元データとなったCSVファイルでも文字化けは発生していませんでしたので...。

文字化けはランダムに発生しており、43万行のデータに対して200件強の文字化けを確認しました。

以上の事象に遭遇したため、Supabase StudioからのCSVインポートは極力使わない方が良さそうです。

ではどうやってCSVインポートすべきか?

答えは簡単で DBeaver のインポート機能を使うようにしてください。

テーブルを作成して右クリックから「データのインポート」という欄があるので、そこから実行すればOKです。

DBeaverからインポートを実行した結果、文字化けが発生することなく正しく挿入されました!

今後誰かのためにこの記事が参考になれば幸いです!

Discussion