私は、このクエリがTaxPayerIDが見つからないことを告げる理由を把握していません。最初は明確にチェックしていますnTrucksテーブルのTaxPayerID列を含むデータベースを使用します。SQLクエリ、列は存在する必要がありますが、結果は状態ではありません
sp_MSforeachdb
'
IF EXISTS (SELECT * FROM [?].INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = ''nTrucks'' AND COLUMN_NAME = ''TaxPayerID'')
BEGIN
SELECT "?", nTrucks.UnitNumber, ntrucks.Companyid, nCompanyData.CompanyName, nTrucks.Owner, nTrucks.TaxPayerID
FROM nTrucks
INNER JOIN nCompanyData ON nTrucks.CompanyID = nCompanyData.CompanyID
WHERE nTrucks.Owner like ''%Trucker%''
END
'
'無効な列名' TaxPayerID 'が表示されています。エラー、私はそれがこの列を含んでいないデータベースからであると仮定します。
ここに誰でも私に骨を投げることができれば、シンプルな「あなたはダミーだよ、このやり方!」と、私はとても感謝しています。
JF
動的SQL内で動的SQLを使用する必要があります。コンパイルエラーがあり、これは 'if'ロジックが実行される前に発生します。 –
BEGINの後の行でnTrucks.TaxPayerIDを取り出すと実行されます。だからこそ私は困惑している。 – JFManiac
2番目のステートメントは '[?] .. nTrucks'から選択する必要があります。 'sp_MSforeachdb'は自動的にデータベースを変更しません。 –