次のような SQL Server 2005 のストアド プロシージャがあります。
CREATE PROCEDURE [dbo].[REP_PayRange]
@StartDate datetime = NULL,
@EndDate datetime = NULL
AS
BEGIN
SET NOCOUNT ON;
SELECT * FROM Payment WHERE PayTime BETWEEN @StartDate AND @EndDate
END
それが実行され、次を実行して SQL 内から結果を取得します。
EXEC REP_PayRange '1 Jan 2012', '10 Jan 2012'
私が苦労しているのはVisual Studioです。
私が取っている手順は次のとおりです。
- Visual Basic 言語を選択して、新しい空白の「Web フォーム」/aspx ページを作成します。
- GridView を挿入する
- データソースを選択し、「データベース」を選択します
- 動作確認済みのデータ接続を選択してください (SQL Server Native)
- 「カスタム SQL ステートメントまたはストアド プロシージャを指定する」
- 「ストアド プロシージャ:」「REP_PayRange」を選択します。
- StartDate には "Parameter source: None" と Default Value "1 Jan 2012" を選択し、EndDate には "Parameter source: None" と Default Value "10 Jan 2012" を選択します。
- [クエリのテスト] ページで [クエリのテスト] をクリックし、値が上で指定した値であり、データが返されないことを確認します。これを保存してブラウザーでプレビューすると、GridView は空になります。
このメソッドを使用して Web ページを作成し、後でパラメーター ソースをデフォルト値ではなくカレンダーに変更できるようにしたいと考えています。
ヘルプやヒントを事前にありがとうございます。