Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

SQL 教程

SQL 主页 SQL 简介 SQL 语法 SQL 选择 SQL 选择 DISTINCT SQL WHERE SQL ORDER BY SQL AND SQL OR SQL NOT SQL 插入数据 SQL 空值 SQL 更新 SQL 删除 SQL SELECT TOP SQL 聚合函数 SQL MIN 和 MAX SQL COUNT SQL SUM SQL AVG SQL LIKE SQL 通配符 SQL IN SQL BETWEEN SQL 别名 SQL 连接 SQL 内连接 SQL 左连接 SQL 右连接 SQL 全连接 SQL 自连接 SQL UNION SQL GROUP BY SQL HAVING SQL EXISTS SQL ANY, ALL SQL SELECT INTO SQL 插入数据 SELECT SQL CASE SQL 空值函数 SQL 存储过程 SQL 注释 SQL 运算符

SQL 数据库

SQL 创建数据库 SQL 删除数据库 SQL 数据库备份 SQL 创建表 SQL 删除表 SQL 修改表 SQL 约束 SQL 非空 SQL 唯一 SQL 主键 SQL 外键 SQL 检查 SQL 默认值 SQL 索引 SQL 自动递增 SQL 日期 SQL 视图 SQL 注入 SQL 托管 SQL 数据类型

SQL 参考资料

SQL 关键字 MySQL 函数 SQL Server 函数 MS Access 函数 SQL 快速参考

SQL 示例

SQL 示例 SQL 编辑器 SQL 测验 SQL 练习 SQL Server SQL 集训营 SQL 证书

SQL SQL Server 存储过程


什么是存储过程?

存储过程是您可以保存的预准备 SQL 代码,因此该代码可以反复使用。

因此,如果您有一个反复编写的 SQL 查询,请将其保存为存储过程,然后只需调用它即可执行它。

您还可以将参数传递给存储过程,以便存储过程可以根据传递的参数值进行操作。

存储过程语法

CREATE PROCEDURE 过程名称
AS
sql_语句
GO;

执行存储过程

EXEC 过程名称;

演示数据库

下面是 Northwind 示例数据库中“Customers”表的选定部分

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

存储过程示例

以下 SQL 语句创建了一个名为“SelectAllCustomers”的存储过程,该过程从“Customers”表中选择所有记录

示例

CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;

以如下方式执行上面的存储过程

示例

EXEC SelectAllCustomers;


带有一个参数的存储过程

以下 SQL 语句创建了一个存储过程,该过程从“Customers”表中选择特定城市中的客户

示例

CREATE PROCEDURE SelectAllCustomers @City nvarchar(30)
AS
SELECT * FROM Customers WHERE City = @City
GO;

以如下方式执行上面的存储过程

示例

EXEC SelectAllCustomers @City = 'London';

带有多个参数的存储过程

设置多个参数非常容易。只需列出每个参数和数据类型,并用逗号隔开,如下所示。

以下 SQL 语句创建了一个存储过程,该过程从“Customers”表中选择特定城市和特定邮政编码的客户

示例

CREATE PROCEDURE SelectAllCustomers @City nvarchar(30), @PostalCode nvarchar(10)
AS
SELECT * FROM Customers WHERE City = @City AND PostalCode = @PostalCode
GO;

以如下方式执行上面的存储过程

示例

EXEC SelectAllCustomers @City = 'London', @PostalCode = 'WA1 1DP';

×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.