すべてのコンピューターに odbc 接続を設定する代わりに、Excel スプレッドシートで odbc 文字列接続を作成して移植可能にするにはどうすればよいですか?

すべてのコンピューターに odbc 接続を設定する代わりに、Excel スプレッドシートで odbc 文字列接続を作成して移植可能にするにはどうすればよいですか?

そのために、Excel 2013 を使用して Excel レポートを設定しています。

スプレッドシートは、データを取得するために各コンピューターで設定する必要がある ODBC 接続を介してデータを取得します。

以下を変更してみました:

データ > クエリ > 接続チェーンのプロパティを変更する

これは接続文字列です

DSN=BI_AZURE;DATABASE=dw;SERVER=mydb.postgres.database.azure.com;PORT=5432;UID=sqladmin@username;SSLmode=disable;ReadOnly=0;Protocol=7.4;FakeOidIndex=0;ShowOidColumn=0;RowVersioning=0;ShowSystemTables=0;ConnSettings=;Fetch=100;Socket=4096;UnknownSizes=0;MaxVarcharSize=255;MaxLongVarcharSize=8190;Debug=0;CommLog=0 ;Optimizer=0;Ksqo=1;UseDeclareFetch=0;TextAsLongVarchar=1;UnknownsAsLongVarchar=0;BoolsAsChar=1;Parse=0;CancelAsFreeStmt=0;ExtraSysTablePrefixes=dd_;LFConversion=1;UpdatableCursors=1;DisallowPremature=0;TrueIsMinus1=0;BI=0;ByteaAsLongVarBinary=0;UseServerSidePrepare=0;LowerCaseIdentifier=0;GssAuthUseGSS=0;XaOpt=1

DSN=BI_AZUREを削除して静的な文字列を配置し、DSN を使用せずに、ODBC 接続が存在するかどうかに関係なく、レポートを任意のマシンに接続できるようにする方法はありますか?

ありがとう。

答え1

これを行うには、既存の odbc ドライバーがあることを確認する必要があります。

次のボックスにチェックを入れてください(フランス語のシステム言語に注意してください) ここに画像の説明を入力してください

コードを次のように変更します。

DRIVER={PostgreSQL UNICODE};DATABASE=dw;SERVER=mydb.postgres.database.azure.com;PORT=5432;UID=sqladmin@username;

そして、すべてが機能するはずです。

接続文字列ソース

役に立つ情報源

関連情報