私の質問は簡単だと思います。クエリがどこから実行されているかを確認するにはどうすればよいですか (スクリプト ファイル自体の場所はどこですか)。
編集 :
ご回答ありがとうございます。TSQL スクリプト ファイルを使用して XML ファイルをインポートする必要があり、それらをまとめて保持したいので、誰かが TSQL スクリプト ファイルを実行しようとすると、XML ファイルの場所を知るために自身の現在のディレクトリを認識し、それをインポートする必要があります。 . もう一度ありがとう!
私の質問は簡単だと思います。クエリがどこから実行されているかを確認するにはどうすればよいですか (スクリプト ファイル自体の場所はどこですか)。
編集 :
ご回答ありがとうございます。TSQL スクリプト ファイルを使用して XML ファイルをインポートする必要があり、それらをまとめて保持したいので、誰かが TSQL スクリプト ファイルを実行しようとすると、XML ファイルの場所を知るために自身の現在のディレクトリを認識し、それをインポートする必要があります。 . もう一度ありがとう!
サーバーがロードする XML ファイルを配置できる既知の場所が必要です。これは、SQL Server マシン上の共有、または SQL Server サービス アカウントが読み取り権限を持つファイル サーバー上の共有である可能性があります。
次に、スクリプトの先頭に次のようなコメントが必要です。
--Make sure you've placed the accompanying XML file on \\RemoteMachine\UploadShare
--Otherwise, expect this script to produce errors
選択した既知の場所に一致するように変更\\RemoteMachine\UploadShare
します。必要に応じて、コメントの後に 30 ~ 40 行の空白行 (またはそれ以上のコメント) を付けて、それを実行しているすべての人がそこにあるものを読む必要があることを明確にします。
次に、その仮定に基づいて残りのスクリプトを作成します。
より簡単な問題の解決策を見つけました! XML ファイルを一時テーブルに一度インポートするだけです。次に、インポートしたデータを含むその一時テーブルの選択クエリを次のように記述します。
" SELECT 'INSERT INTO MyTable VALUES (' + Col1 + ', ' + Col2 + ')' FROM MyImportedTable "
そして今、インポートしたレコードごとに多くの挿入コマンドがあります。そして、すべての挿入コマンドをスクリプトに保存します。だから、どこへ行っても自分のスクリプト ファイルが必要なだけです。