0
私のストアドプロシージャのテキストボックスからWHERE
句の文字列を渡したいと思っています。ストアドプロシージャのWHERE句の文字列を渡す
SELECT *
FROM TABLE
WHERE "Textbox1.text" = '1234'
(テキストボックスの値は、列名(例:「ID」となります)
私は、ストアドプロシージャでは?
はここでそれを返す、私がこれまで行って何がどのように行うことができます何の価値
ALTER PROCEDURE ORProc
@SEARCH_PARAMETER VARCHAR(100) = NULL,
@OR_NUMBER VARCHAR(20) = NULL,
@CLIENT_NAME VARCHAR(100) = NULL,
@OR_DATE VARCHAR(10) = NULL
AS
BEGIN
SET NOCOUNT ON;
SELECT *
FROM OR_HEADER
WHERE '%'+ @SEARCH_PARAMETER + '%' = @OR_NUMBER
OR '%'+ @SEARCH_PARAMETER + '%' = @OR_DATE
OR '%'+ @SEARCH_PARAMETER + '%' = @CLIENT_NAME
END;
EXEC ORProc @SEARCH_PARAMETER = 'OR_NUMBER',
@OR_NUMBER = '23232'
使用LIKEの代わりに= –
に3つの値のパラメータを置き換えることができると思いますindex.php/2009/03/19/catch-all-queries /)または[ここ](http://www.sommarskog.se/dyn-search.html)を参照してください。 – HABO
アプリケーションから列名を渡すのではなく、WHERE句で指定された必要な列のみを使用して、ストアドプロシージャの動的クエリを構築して実行することをお勧めします。 [動的検索条件](http://www.sommarskog.se/dyn-search.html)を参照してください。 –