2

ASP.NET アプリケーションで SQL プレフィックス検索を実行しています。この目的のために、次のクエリを記述しているストアド プロシージャを作成しました。

SELECT Description, ProductDescriptionID
FROM Production.ProductDescription
WHERE CONTAINS (Description, ' "top*" ' );

手順のようにパラメーターがあります。上記のクエリの一番上@pvchProductNameの単語をパラメーター値に置き換えるにはどうすればよいですか?一重引用符と二重引用符の構文の問題に直面しています。

4

1 に答える 1

4
DECLARE @searchTerm nvarchar(60) = N' "' + @pvchProductName + N'*" ';
// where the "60" above should be adjusted to account for the length
// of pvchProductName, plus 5. So if pvchProductName is [n]varchar(30),
// then nvarchar(35) would be fine.

SELECT Description, ProductDescriptionID
FROM Production.ProductDescription
WHERE CONTAINS (Description, @searchTerm);

?

ただし、フィルター条件に含めたい引用符/アスタリスク/空白の量は不明です。少し確認することをお勧めします。

于 2012-10-22T07:27:42.180 に答える