最近、クライアント用の単純な Access 2010 データベースを開発しました。VBA を使用せずにマクロを使用して設計されているため、セキュリティ警告は発生しません。唯一の問題は、SQL Server Express データベースに接続された ODBC リンク テーブルを使用することであり、クライアントのコンピューターにインストールされたテーブルの接続文字列をリセットする方法が必要でした。
リンクされたテーブルを通過し、それらの名前を辞書にコピーしてから、新しいデータ ソースを使用してテーブルを再作成する単純な VBscript を開発しました。
For Each key In tcmw.Keys
Set td = db.CreateTableDef(key)
td.Connect = "ODBC;Description=xxx;DRIVER=SQL Server;SERVER=xxx\SQLEXPRESS;DATABASE=TCM;User=xxx;Password=xxx;"
td.SourceTableName = key
db.TableDefs.Append td
Next
スクリプトは機能しているように見えますが、リンクされたテーブルにカーソルを合わせると、次のデータ ソースが表示されます。Trusted_Connection=Yes
指定されたユーザー名とパスワードの代わりに次のものがあります。
ODBC;Description=xxx;DRIVER=SQL Server;SERVER=xxx\SQLEXPRESS;Trusted_Connection=Yes
それは私がデータ ソースに設定したものではなく、なぜそうなるのかわかりません。リンクされたテーブルの定義に保存されたユーザー名とパスワードを取得するために欠けている手順はありますか?