多数の SQL スクリプトを含むフォルダーから SQL スクリプトを実行しようとしています。これらのスクリプトは完全なデータベースを作成するので、スクリプトを順番に実行したいので、このコードを書き、それをスクリプトに配置しました。
:r c:\Scripts\CREATE_TABLE1.sql -- sql file to create first table
:r c:\Scripts\CREATE_TABLE2.sql -- sql file to create second table
:r c:\Scripts\CREATE_TABLE3.sql -- sql file to create third table
正常に動作しており、フォルダー名を動的にする必要があるだけです。これにより、上部に変数を作成してフォルダー名を簡単に変更し、それをすべてのファイル名で使用できます。いくつかのオプションを調べましたが、あまり見つけられず、このようなものになりました。しかし、これはうまくいきません。
Declare @FolderName varchar(100)
set @FolderName='C:\Scripts\'
:r @FolderName+'CREATE_TABLE1.sql -- create first table
:r @FolderName+'CREATE_TABLE2.sql -- create second table
:r @FolderName+'CREATE_TABLE3.sql -- create third table
ただし、フォルダー名の後の最初の r コマンドの近くで構文が正しくないというエラーがスローされます。誰かがそれを修正する方法または回避策を教えてください。