ホームページ データベース mysql チュートリアル sqlserver存储过程学习笔记(一)基础知识篇(全)

sqlserver存储过程学习笔记(一)基础知识篇(全)

Jun 07, 2016 pm 03:51 PM
sqlserver 基本知識 ストレージ 勉強 ノート プロセス

说出来有点丢人,做sqlserver应用系统近一年,竟然没有使用过存储过程,现在就好好的梳理一下对应知识,慢慢让其加入到我的项目中去吧。 存储过程的优点:1、运行效率高,提供了在服务器端快速执行sql语句的有效途径。2、存储过程降低了客户机和服务器之间的

  说出来有点丢人,做sqlserver应用系统近一年,竟然没有使用过存储过程,现在就好好的梳理一下对应知识,慢慢让其加入到我的项目中去吧。

  存储过程的优点:1、运行效率高,提供了在服务器端快速执行sql语句的有效途径。2、存储过程降低了客户机和服务器之间的通信量。3、方便实施企业规则。

  (1)创建存储过程

  ①创建一个存储过程,查看00005号课程的选修情况,包括选修该课程学生的学号、姓名和成绩。

   解答:

              USE SM(数据库名称)

              GO

              CREATE PROCEDURE ssc_3

              AS

                   SELECT Student.SNo,SName,Score

                   FROM Student LEFT JOIN SC ON Student.SNo=SC.SNo

                   WHERE SC.SNo='00005'

                   GO

按F5键,创建成功

②执行存储过程:EXECUTE ssc_3

(2)使用输入参数

 ①上面建立的存储过程只能对00005号课程的选修情况进行查看,要想对所有课程进行随机查看,需要进行参数的传递

USE SM

GO

CREATE PROCEDURE ssc_4

@cnumber CHAR(5)

AS

 SELECT Student.SNo,SName,Score

 FROM Student LEFT JOIN SC ON Student.SNo=SC.SNo

 WHERE SC.SNo=@cnumber

GO

②按位置传递参数

EXECUTE ssc_4 '00008'

③通过参数名传递参数

EXECUTE ssc_4 

@cnumber='00008'

 (3)使用默认参数值

①执行存储过程ssc_4时,如果没有给出参数,系统会报错。如果希望不给参数时,能查询所有课程的选修情况,则可以使用默认参数来实现

 USE SM 

GO

CREATE PROCEDURE ssc_5

@cnumber CHAR(5) =NULL

AS 

IF  @cnumber IS NULL

BEGIN

SELECT Student.SNo,SName,Score

FROM Stuent JOIN SC ON Student.SNo=SC.SNo

END

ELSE

BEGIN

SELECT Student.SNo,SName,Score FROM Student JOIN SC ON Student.SNo=SC.SNo

WHERE SC.SNo=@cnumber

END

GO

②执行下面两条语句,比较执行结果。

EXECUTE ssc_5

EXECUTE ssc_5 '00005'

(4)使用输出参数

①创建一个存储过程ssc_6,获得选修某门课程的总人数

USE SM 

GO

CREATE PROCEDURE ssc_6

@cnumber CHAR(5),@ccount INT OUTPUT

AS 

SELECT @ccount=COUNT(*) FROM SC WHERE SC.CNo=@cnumber

GO

@执行存储过程ssc_6

DECLARE @ccount INT

EXECUTE ssc_6 '00008',@ccount OUTPUT

SELECT 'the result is',@ccount

(5)使用返回值

①创建一个返回执行状态码的存储过程ssc_7,它接受课程号为输入参数,如果执行成功,返回0;如果没有给出课程号,返回错误码1;如果给出的课程号不存在,返回错误码2;如果出现其他错误,返回错误码3.

USE SM

GO

CREATE PROCEDURE ssc_7

@cnumber CHAR(5) = NULL

AS

IF @cnumber IS NULL

BEGIN

    PRINT 'error:you must specify a course number.'

    RETURN(1)

    END

ELSE

BEGIN

    IF(SELECT COUNT(*) FROM SC WHERE CNo=@cumber)=0

    BEGIN

    PRINT 'error:you must specify a valid Course number'

    RETURN(2)

     END

END

SELECT @cnumber AS CNo FROM SC WHERE CNo=@cnumber 

IF @@error0

BEGIN 

RETURN(3)

END

ELSE

RETURN(0)

GO

执行存储过程ssc_7

DECLARE @result INT

EXEC @result ==ssc_7

SELECT 'the result is',@result

(6)修改存储过程(sqlserver 2008下)

在数据库根目录下,打开可编程选项下得存储过程选项,选择要修改的存储过程,右击鼠标,在弹出的对话框中选择修改即可

(7)查看存储过程。

  执行以下语句,查看存储过程ssc_3 的信息。

EXEC sp_help ssc_3

(8)删除存储过程

执行以下语句,删除存储过程ssc_3

DROP PROCEDURE ssc_3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

mdfファイルをsqlserverにインポートする方法 mdfファイルをsqlserverにインポートする方法 Apr 08, 2024 am 11:41 AM

インポート手順は次のとおりです。 MDF ファイルを SQL Server のデータ ディレクトリ (通常は C:\Program Files\Microsoft SQL Server\MSSQL\DATA) にコピーします。 SQL Server Management Studio (SSMS) でデータベースを開き、[アタッチ] を選択します。 「追加」ボタンをクリックして、MDF ファイルを選択します。データベース名を確認し、「OK」ボタンをクリックします。

指定されたオブジェクトが sqlserver データベースにすでに存在するという問題を解決する方法 指定されたオブジェクトが sqlserver データベースにすでに存在するという問題を解決する方法 Apr 05, 2024 pm 09:42 PM

SQL Server データベースに既に存在する同じ名前のオブジェクトについては、次の手順を実行する必要があります。 オブジェクトの種類 (テーブル、ビュー、ストアド プロシージャ) を確認します。 IF NOT EXISTS を使用すると、オブジェクトが空の場合に作成をスキップできます。オブジェクトにデータがある場合は、別の名前を使用するか、構造を変更してください。既存のオブジェクトを削除するには、DROP を使用します (注意してください。バックアップを推奨します)。スキーマの変更をチェックして、削除または名前変更されたオブジェクトへの参照がないことを確認します。

sqlserver サービスを開始できない場合の対処方法 sqlserver サービスを開始できない場合の対処方法 Apr 05, 2024 pm 10:00 PM

SQL Server サービスの開始に失敗した場合の解決手順は次のとおりです。 エラー ログを確認して、根本原因を特定します。サービス アカウントにサービスを開始する権限があることを確認してください。依存関係サービスが実行されているかどうかを確認します。ウイルス対策ソフトウェアを無効にします。 SQL Server のインストールを修復します。修復が機能しない場合は、SQL Server を再インストールします。

SQLサーバーのポート番号を確認する方法 SQLサーバーのポート番号を確認する方法 Apr 05, 2024 pm 09:57 PM

SQL Server のポート番号を表示するには: SSMS を開いてサーバーに接続します。オブジェクト エクスプローラーでサーバー名を見つけ、右クリックして [プロパティ] を選択します。 「接続」タブで、「TCP ポート」フィールドを表示します。

sqlserverで誤って削除したデータベースを回復する方法 sqlserverで誤って削除したデータベースを回復する方法 Apr 05, 2024 pm 10:39 PM

SQL Server データベースを誤って削除した場合は、次の手順を実行して回復できます: データベース アクティビティの停止、ログ ファイルのバックアップ、データベース ログの確認、回復オプション: バックアップからの復元、トランザクション ログからの復元、DBCC CHECKDB の使用、3 番目の使用パーティーツール。データ損失を防ぐために、データベースを定期的にバックアップし、トランザクション ログを有効にしてください。

SQLserver データベースはどこにありますか? SQLserver データベースはどこにありますか? Apr 05, 2024 pm 08:21 PM

SQL Server データベース ファイルは、通常、次のデフォルトの場所に保存されます。 Windows: C:\Program Files\Microsoft SQL Server\MSSQL\DATALinux: /var/opt/mssql/data データベース ファイルの場所は、データベース ファイル パスを変更することでカスタマイズできます。設定。

インストールが失敗した場合に sqlserver を削除するにはどうすればよいですか? インストールが失敗した場合に sqlserver を削除するにはどうすればよいですか? Apr 05, 2024 pm 11:27 PM

SQL Server のインストールが失敗した場合は、次の手順に従ってクリーンアップできます。 SQL Server をアンインストールする レジストリ キーを削除する ファイルとフォルダーを削除する コンピューターを再起動する

sqlserver 英語インストールを中国語に変更する方法 sqlserver 英語インストールを中国語に変更する方法 Apr 05, 2024 pm 10:21 PM

次の手順に従って、SQL Server の英語インストールを中国語に変更できます: 対応する言語パックをダウンロードする、SQL Server サービスを停止する、言語パックをインストールする、インスタンス言語を変更する、ユーザー インターフェイス言語を変更する、アプリケーションを再起動する。

See all articles