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

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

Jun 07, 2016 pm 03:51 PM
sqlserver basic knowledge storage study notes process

说出来有点丢人,做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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to import mdf file into sqlserver How to import mdf file into sqlserver Apr 08, 2024 am 11:41 AM

The import steps are as follows: Copy the MDF file to SQL Server's data directory (usually C:\Program Files\Microsoft SQL Server\MSSQL\DATA). In SQL Server Management Studio (SSMS), open the database and select Attach. Click the Add button and select the MDF file. Confirm the database name and click the OK button.

How to solve the problem that the object named already exists in the sqlserver database How to solve the problem that the object named already exists in the sqlserver database Apr 05, 2024 pm 09:42 PM

For objects with the same name that already exist in the SQL Server database, the following steps need to be taken: Confirm the object type (table, view, stored procedure). IF NOT EXISTS can be used to skip creation if the object is empty. If the object has data, use a different name or modify the structure. Use DROP to delete existing objects (use caution, backup recommended). Check for schema changes to make sure there are no references to deleted or renamed objects.

What to do if the sqlserver service cannot be started What to do if the sqlserver service cannot be started Apr 05, 2024 pm 10:00 PM

When the SQL Server service fails to start, here are some steps to resolve: Check the error log to determine the root cause. Make sure the service account has permission to start the service. Check whether dependency services are running. Disable antivirus software. Repair SQL Server installation. If the repair does not work, reinstall SQL Server.

How to check sqlserver port number How to check sqlserver port number Apr 05, 2024 pm 09:57 PM

To view the SQL Server port number: Open SSMS and connect to the server. Find the server name in Object Explorer, right-click it and select Properties. In the Connection tab, view the TCP Port field.

How to recover accidentally deleted database in sqlserver How to recover accidentally deleted database in sqlserver Apr 05, 2024 pm 10:39 PM

If you accidentally delete a SQL Server database, you can take the following steps to recover: stop database activity; back up log files; check database logs; recovery options: restore from backup; restore from transaction log; use DBCC CHECKDB; use third-party tools. Please back up your database regularly and enable transaction logging to prevent data loss.

Where is the sqlserver database? Where is the sqlserver database? Apr 05, 2024 pm 08:21 PM

SQL Server database files are usually stored in the following default location: Windows: C:\Program Files\Microsoft SQL Server\MSSQL\DATALinux: /var/opt/mssql/data The database file location can be customized by modifying the database file path setting.

How to delete sqlserver if the installation fails? How to delete sqlserver if the installation fails? Apr 05, 2024 pm 11:27 PM

If the SQL Server installation fails, you can clean it up by following these steps: Uninstall SQL Server Delete registry keys Delete files and folders Restart the computer

How to change sqlserver English installation to Chinese How to change sqlserver English installation to Chinese Apr 05, 2024 pm 10:21 PM

SQL Server English installation can be changed to Chinese by following the following steps: download the corresponding language pack; stop the SQL Server service; install the language pack; change the instance language; change the user interface language; restart the application.

See all articles