サーバー内のすべてのデータベースを循環し、ストアド プロシージャを実行して結果テーブルに保存するクエリを作成しようとしています。
これは私がこれまでに持っているものです:
CREATE table results (Severity INT, PurchaseOrderNumber INT,
PurchaseOrderLineNumber SMALLINT, ShipmentNumber SMALLINT,
ErrorCode int, ErrorText VARCHAR(256), DateCreated datetime)
EXECUTE sp_msForEachDB '
IF "?" LIKE "VIS%"
BEGIN
USE "?"
INSERT INTO results EXECUTE IC_PURCHASEORDER
END
'
SELECT * FROM results
DROP TABLE results
このコードから達成したいことは、サーバー内のすべてのデータベースに対して IC_PURCHASEORDER ストアド プロシージャを実行し、その結果を作成された結果テーブルに記録することです。その後、それらの結果をスーパーバイザーに電子メールで送信し、テーブルをドロップすることができますが、それは別の仕事です. IF ステートメントに構文エラーが存在することはわかっています。その結果、次のエラーが発生します。
Msg 102, Level 15, State 1, Line 4
Incorrect syntax near '{insert database name here}'.
私が達成しようとしていることについての洞察を得ることは可能でしょうか? ありがとう!