SQLでのよくある問題と解決法

このノートでは、よくあるExploratoryデスクトップの問題と、それらの解決法をまとめていきます。

Google BigQueryデータをインポートしようとするとError : No method asJSON S3 class: wk_vctrというエラーになりデータが取り込めない

Google BigQueryからデータをインポートする際、SQLクエリにGEOGRAPHYデータ型のカラムが含まれていると、データのインポートに失敗し、以下のエラーが表示される場合があります。

Error : No method asJSON S3 class: wk_vctr

これを回避するために、SQLクエリで以下の関数を使用します。

  • ST_X(GEOPOINT_COL) AS longitude
  • ST_Y(GEOPOINT_COL) AS latitude

参考: https://cloud.google.com/bigquery/docs/reference/standard-sql/geography_functions

Google BigQueryからデータをインポートしようとするとUnknown Type INTERNALというエラーになりデータが取り込めない

Google BigQueryからデータをインポートしようとすると以下のようなエラーになりデータが取り込めないことがあります。

Unknown Type INTERNAL

この問題はSQLクエリーに含まれる列にIntervalというデータ型が使われている場合に発生します。 (参考: Interval Data Type)

この問題を回避するには、SQLクエリーの中で以下のようにIntervalのデータ型の列をCAST関数を使ってstringに変換します。

SELECT  CAST(COL_A as STRING) as String_Column ...

参考: https://cloud.google.com/bigquery/docs/reference/standard-sql/conversion_functions#cast_as_string

PostgreSQLからデータをインポートする時に”Error : No method asJSON S3 class: pq__int8”のエラーになる

PostgreSQLでデータをインポートする時に、SQL側でのデータタイプに以上がある場合は以下のエラーが表示される場合があります。

Error : No method asJSON S3 class: pq__int8

このエラーを回避するために、SQLクエリでデータ型を指定してからインポートすることで問題なくインポートすることができます。

select 列名::bigint from テーブル名;

上記の例では、数値型の列のためbigint型を指定しています。

SQL Server / Azure SQLにSQL native client 11.0で接続するとエラーになる

SQL Server / Azure SQLにSQL native client 11.0で接続すると以下のようなエラーになることがあります。

Error in result_fetch(res@ptr, n) :

nanodbc/nanodbc.cpp:3069: 07009: [Microsoft][SQL Server Native Client 11.0]記述子のインデックス

その場合は、ODBC Driver for SQL Server のダウンロードからODBCドライバーをダウンロードしてインストールします。

そして、ExploratoryのMS SQL Server / Azure SQLのデータコネクションの設定で、MS SQL Server用のODBCドライバにSQL Server - ODBC Driver 18を選択してください。

MacでSnowflakeやMS SQLサーバーのデータソースのインポートアイコンをクリックしてもインポートダイアログが開かない

MacでSnowflakeやMS SQLサーバーのデータソースのインポートアイコンをクリックしても、インポートダイアログが開かないことがあります。またSnowflakeやAzureのデータコネクションが開かない場合があります。

その場合は、こちらのノートに従ってunixODBCをインストールすることで問題を解決できます。

Snowflake: CASEステートメントが日本語を返す時に、文字が欠けたり化けたりする

別の列の値をもとに日本語を返すようなCASEステートメントを実行すると、文字が欠けたり、文字化けする場合があります。

その場合は、こちらのノートに従って問題を回避してください。

SnowflakeへのSQLクエリーがError : nanodbc/nanodbc.cpp:1138: 00000 [Snowflake][Support] (50404) Invalid connection string というエラーになる。

Snowflakeに対してSQLクエリを実行しようとすると、次のエラーが発生することがあります。

Error : nanodbc/nanodbc.cpp:1138: 00000 [Snowflake][Support] (50404) Invalid connection string.

その場合は、こちらのコミュニティポストに従ってコネクションを修正してください。

ODBCデータソースでOracleに接続する際、ORA-01406のエラーになる

ODBCデータソースでOracleに接続する際、Oracle Databaseの文字エンコーディングがJA16SJISといったUTF-8でないものが設定されていて、クライアントのNLS_LANGがUTF-8に設定されていると、以下のエラーが発生する場合があります。

その場合は、Oracle ODBC ドライバ構成開き、「Workarounds」タブをクリックします。 「SQL_WCHAR強制サポートする」チェックボックスにチェックを入れます。

上記の解決方法を試してもうまく問題が解決しないときや、これら以外の問題に当たっているときは、サポートチーム (support@exploratory.io) までご連絡ください。

Export Chart Image
Output Format
PNG SVG
Background
Set background transparent
Size
Width (Pixel)
Height (Pixel)
Pixel Ratio