0
現在、データベーステーブルを別のデータベースストアドプロシージャ(database name..table name
)に使用していますが、のような別のデータベース内で実行これはSP、テーブル名ですQMSV3Dev
は、データベース名とQuote
で、私がストアドプロシージャQMSV3Dev..Quote
上記でこの1つのデータベーステーブルを別のデータベースストアドプロシージャに動的に使用する方法
Select QT.Name,SC.Name as Status,QT.QuoteNumber,QT.PolicyNumber,LC.Name as LineCode,QT.DBAName as DBAName
from QMSV3Dev..Quote QT, QMSV3Dev..StatusCode SC, QMSV3Dev..LineCode LC
where QT.StatusCode = SC.StatusCode And QT.LineCode = LC.LineCode and
QT.DBAName like 'a%' order by QT.Name,QuoteNumber desc
のように書いています任意の提案
を手順PLS与えますは今
同じクエリは、データベース名を渡す動的
CREATE Procedure [dbo].[usp_GetSearch123]
(
@SearchValue varchar(100),
@SearchBy varchar(250),
@DbName varchar(50)
)
AS
Begin
Select QT.Name,SC.Name as Status,QT.QuoteNumber,QT.PolicyNumber,LC.Name as LineCode,QT.DBAName as DBAName
from @DbName+'..Quote ' QT,@DbName+'.. StatusCode' SC, @DbName+'..Linecodes' LC
where QT.StatusCode = SC.StatusCode And QT.LineCode = LC.LineCode and
(QT.Name like @SearchValue+'%' or QT.DBAName like @SearchValue+'%')
order by QT.Name,QuoteNumber desc
end
メッセージ102、レベル15、状態1、プロシージャusp_GetSearch123、行12のエラーが発生していません。 'QT'付近の構文が正しくありません。 – hmk
@hmkmudiam私は自分の答えを編集しました、あなたはもう一度やり直すかもしれません。 –
が正常に作成されましたが、実行中です。usp_GetSearch123 'a'、 ''、 'QMSV3Dev'エラーはmsg 208、レベル16、状態1、行1です。 無効なオブジェクト名 'QMSV3Dev..StatusCodes'。 plsそれをチェック – hmk