📄 sql server 2000
字号:
--第十二章--创建和管理存储过程
--创建一个简单的存储过程。将从四个表的联接中返回所有用户名、密码以及出生日期。该存储过程不使用任何参数。
USE pubs
IF EXISTS (SELECT name FROM member
WHERE name = 'userdetail' AND type = 'P')
DROP PROCEDURE userdetail
GO
CREATE PROCEDURE userdetail
AS
SELECT name, password,birthday
FROM member a INNER JOIN users ta
ON a.au_id = ta.au_id INNER JOIN titles t
ON t.title_id = ta.title_id INNER JOIN publishers p
ON t.pub_id = p.pub_id
GO
--userdetail 存储过程可以通过以下方法执行:
EXECUTE userdetail
-- Or
EXEC userdetail
--如果该过程是批处理中的第一条语句,则可使用:
userdetail
--下面将讨论如何在存储过程中使用参数。下面的存储过程从四个表的联接中只返回指定的用户名、密码以及生日。该存储过程接受与传递的参数精确匹配的值。
USE pubs
IF EXISTS (SELECT name FROM member
WHERE name = 'userinformation' AND type = 'P')
DROP PROCEDURE userinformation
GO
USE pubs
GO
CREATE PROCEDURE userinformation
@lastname varchar(40),
@firstname varchar(20)
AS
SELECT lastname, fristname, password, birthday
FROM member a INNER JOIN users ta
ON a.au_id = ta.au_id INNER JOIN titles t
ON t.title_id = ta.title_id INNER JOIN publishers p
ON t.pub_id = p.pub_id
WHERE au_fname = @firstname
AND au_lname = @lastname
GO
--userinformation 存储过程可以通过以下方法执行:
EXECUTE userinformation 'Yuguang', 'Fu'
-- Or
EXECUTE userinformation @lastname = 'Yuguang', @firstname = 'Fu'
-- Or
EXECUTE userinformation @firstname = 'Fu', @lastname = 'Yuguang'
-- Or
EXEC userinformation 'Yuguang', 'Fu'
-- Or
EXEC userinformation @lastname = 'Yuguang', @firstname = 'Fu'
-- Or
EXEC userinformation @firstname = 'Fu', @lastname = 'Yuguang'
--如果该过程是批处理中的第一条语句,则可使用:
userinformation 'Yuguang', 'Fu'
-- Or
userinformation @lastname = 'Yuguang', @firstname = 'Fu'
-- Or
userinformation @firstname = 'Fu', @lastname = 'Yuguang'
--察看以前创建的yuguang_InsertRows存储过程的时候,需要使用一下命令:
USE auser
EXEC sp_helptext yuguang_InsertRows
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -