この記事では主に SQL Server ストアド プロシージャを作成および変更するための実装コードを紹介します。必要な方は参考にしてください。
SQL Server 2005 の管理ツールを開き、ストアド プロシージャを作成する必要があるデータベースを選択し、「 「プログラマビリティ」を選択して展開すると「ストアドプロシージャ」が表示されます。これを右クリックして「新規ストアド プロシージャ」を選択すると、右側の編集ウィンドウが開きます。このウィンドウには、ストアド プロシージャを作成するために Microsoft によって自動的に生成された SQL Server ステートメントが含まれています。
ストアド プロシージャの名前、パラメータ、操作ステートメントを記述したら、[構文解析] をクリックします。エラーがなければ、直接「F5」を実行します。 以下は、基本的なストアド プロシージャのコードです。 :
CREATE PROCEDURE Get_Data ( @Dealer_ID VARCHAR(<strong>50</strong>) ) AS SELECT * FROM myData WHERE Dealer_ID = @Dealer_ID
クリックして実際の例をご覧ください
ストアド プロシージャの作成方法はわかりましたが、それを変更するのはまだ難しいですか?明らかに違います。ストアド プロシージャの変更も非常に簡単です。まず、現在のデータベースのストアド プロシージャ リストを更新します。これで、作成したストアド プロシージャの名前が表示され、[変更] を選択すると、右側に編集用のコードが表示されます。 (下)
ALTER PROCEDURE [dbo].[Get_Data] ( @Dealer_ID VARCHAR(<strong>50</strong>) ) AS SELECT * FROM myData WHERE Dealer_ID = @Dealer_ID
コードを変更するだけで、次のようになります
ALTER PROCEDURE [dbo].[Get_Data] ( @Dealer_ID VARCHAR(<strong>50</strong>), @Period VARCHAR(<strong>20</strong>) ) AS SELECT * FROM myData WHERE Dealer_ID = @Dealer_ID AND Period = @Period
F5 が正常に実行され、変更されたストアド プロシージャが完了します。
データ挿入操作を実装するストアド プロシージャを書き始めました。端的に言えば、データを追加することを意味します。このストアド プロシージャのコードは次のとおりです:
CREATE PROCEDURE PROC_INSERT_DATA_ID @DealerID varchar(<strong>50</strong>) AS BEGIN 5 DECLARE @COUNT INT SET @COUNT = (SELECT COUNT(*) FROM myDATA_Details WHERE DealerID = @DealerID) IF (@COUNT><strong>0</strong>) BEGIN DELETE FROM myDATA_Details WHERE DealerID = @DealerID INSERT INTO myDATA_Details (DealerID) VALUES (@DealerID) END ELSE BEGIN INSERT INTO myDATA_Details (DealerID) VALUES (@DealerID) END END --实际例子:http://hovertree.com/hovertreescj/sql/p_hovertreescj_urls_add.htm
F5、作成は成功しました。これを呼び出してデータを挿入します。OK、問題ありません。挿入は成功し、期待された目的が達成されました。
は次の目的で使用されます。データを更新するコードは次のとおりです:
CREATE PROCEDURE PROC_INSERT_DATA_DETAIL @DealerID varchar(<strong>50</strong>), @FieldName varchar(<strong>2000</strong>), @FieldValue varchar(<strong>2000</strong>) AS BEGIN DECLARE @Count INT SET @Count = (SELECT COUNT(*) FROM myDATA_Details WHERE DealerID = @DealerID) IF (@COUNT><strong>0</strong>) BEGIN UPDATE myDATA_Details SET DealValue = @FieldValue WHERE DealerID = @DealerID END ELSE BEGIN INSERT INTO myDATA_Details (DealerID) VALUES (@DealerID) END END
または:
修正コード
ALTER PROCEDURE PROC_INSERT_DATA_DETAIL @DealerID varchar(<strong>50</strong>), @FieldName varchar(<strong>2000</strong>), @FieldValue varchar(<strong>2000</strong>) AS BEGIN DECLARE @Count INT DECLARE @StrSQL VARCHAR(<strong>2000</strong>) SET @Count = (SELECT COUNT(*) FROM myDATA_Details WHERE DealerID = @DealerID) IF (@COUNT><strong>0</strong>) BEGIN SET @StrSQL = 'UPDATE myDATA_Details SET '+ @FieldName + ' = ''' +@FieldValue + ''' WHERE DealerID = '+ @DealerID EXEC(@StrSQL) END ELSE BEGIN INSERT INTO myDATA_Details (DealerID) VALUES (@DealerID) SET @StrSQL = 'UPDATE myDATA_Details SET '+ @FieldName + ' = ''' +@FieldValue + ''' WHERE DealerID = '+ @DealerID EXEC(@StrSQL) END END
以上がSQL Server ストアド プロシージャを作成および変更するための実装コードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。