来自维基百科,自由的百科全书
存储过程,又称存储程序(英语:Stored Procedure),是在数据库存储复杂程序,以便外部程序调用的数据库对象,可以视为数据库的一种函数或子程序。
存储过程具有下列的好处:
数据库系统 | 存储过程使用的编程语言 |
---|---|
CUBRID | Java |
DB2 | SQL PL 或 Java |
Firebird | PSQL (Fyracle 亦支持部分 Oracle 的 PL/SQL) |
Informix | SPL |
Microsoft SQL Server | Transact-SQL 及多种 .NET Framework 语言 |
MySQL | 自己标准的存储过程,很接近 SQL:2003 标准 |
Oracle | PL/SQL 或 Java |
PostgreSQL | PL/pgSQL,亦可使用自己的函数语这,例如 pl/perl 或 pl/php |
SAP | SQLScript 或 R |
Sybase ASE | Transact-SQL |
存储过程是数据库对象之一,必须使用资料定义语言来建立,例如:
CREATE PROCEDURE usp_AddProduct
(
@Barcode varchar(13),
@Caption nvarchar(50)
)
AS
BEGIN
IF LEN(@Barcode) < 13
RAISERROR('Barcode length is too short.')
INSERT INTO MyProducts (Barcode, Caption) VALUES (@Barcode, @Caption)
END
外部程序需要使用 EXECUTE 或 CALL 来调用存储过程。
EXEC usp_AddProduct '2293891100011', 'MyProductCaption'
Seamless Wikipedia browsing. On steroids.