O'Reilly logo

SQL in a Nutshell by Kevin Kline

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Name

ALTER PROCEDURE

Synopsis

The ALTER PROCEDURE statement allows changes to be made to an existing stored procedure. Depending on the vendor, the kind and degree of change varies widely.

In SQL Server, this statement alters a previously created procedure (using the CREATE PROCEDURE statement) but doesn’t change permissions or affect dependent stored procedures or triggers.

In Oracle, this command simply recompiles a PL/SQL stored procedure, but does not allow the code to be changed. Instead, use the Oracle command CREATE OR REPLACE PROCEDURE to achieve the same functionality.

Vendor

Command

SQL Server

Supported, with variations

MySQL

Not supported

Oracle

Supported, with variations

PostgreSQL

Not supported

SQL99 Syntax and Description

ALTER PROCEDURE procedure_name {CASCADE | RESTRICT}
[LANGUAGE | PARAMETER STYLE | <SQL data access> | <null clause behavior> | DYNAMIC RESULT SETS | NAME]
[parameter datatype [,...n]

As discussed under CREATE PROCEDURE, the LANGUAGE, PARAMETER STYLE, SQL data access method (i.e., NO SQL, CONTAINS SQL, etc.), null clause behavior (e.g., CALL ON NULL INPUT ), DYNAMIC RESULT SET, and the procedure NAME all may be altered.

The ALTER PROCEDURE command also may be used to alter the number or type of input parameters.

Microsoft SQL Server Syntax and Variations

ALTER PROC[EDURE] procedure_name [;number] [ {@parameter datatype } [VARYING] [= default] [OUTPUT] ][,...n] [WITH { RECOMPILE | ENCRYPTION | RECOMPILE, ENCRYPTION } ] [FOR REPLICATION] AS T-SQL ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required