2017-12-30 69 views
-5
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 

CREATE PROCEDURE Rezİnfo 
    (@Datem AS DATE, @Min AS DOUBLE, @Max AS DOUBLE)  
AS 
BEGIN 
    SELECT * 
    FROM Reservationn 
    WHERE HourEnd > Min 
     AND HourEnd < Max 
     AND datem = Date 
END 

データベースのストアドプロシージャを書きたいと思います。日付、分、最大時間を入力してこのリクエストリストを表示します。日付と時間のストアドプロシージャとC#コードを書きます

プロシージャコードを終了したら、どのようにC#の部分で記述できますか?

答えて

1

あなたのストアドプロシージャが無効である、あなたは覚えていると

1

System.Data.Common.DbConnectionから派生した接続オブジェクトを使用し、その接続でプロシージャ名をコマンド文字列として指定してCreateCommandメソッドを呼び出します。その後、返されたコマンドのCommandTypeプロパティをCommandType.StoredProcedureに設定できます。

次に、コマンドのParametersコレクションにパラメータ値を追加し、最後にExecuteReaderを呼び出して結果セットを取得します。

+0

おかげで、すべてのSPのテキストであなたの変数名に@記号を前に付けるあなたのSPのテキスト内の変数ではなく

CREATE PROCEDURE Rezİnfo (@Datem as date, @Min as double, @Max as double ) AS BEGIN select * from Reservationn where HourEnd>@Min and HourEnd<@Max and [email protected] END GO 

をキーワードを使用して、しかし、このされていますプロシージャ実行できません、私は最初にこの手順を修正することができます – Melih

関連する問題