Sql存储过程

下面的存储过程从四个表的联接中返回所有作者(提供了姓名)、出版的书籍以及出版社。该存储过程不使用任何参数。 

USE pubs  
IF EXISTS (SELECT name FROM sysobjects  
          WHERE name = au_info_all AND type = P)    DROP PROCEDURE au_info_all 

GO 

CREATE PROCEDURE au_info_all 

AS  
SELECT au_lname, au_fname, title, pub_name    FROM authors a INNER JOIN titleauthor 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 

EXECUTE au_info_all
 


使用带有参数的简单过程 

CREATE PROCEDURE au_info    @lastname varchar(40),    @firstname varchar(20) AS  
SELECT au_lname, au_fname, title, pub_name    FROM authors a INNER JOIN titleauthor 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  
   au_info

 

存储过程可以通过以下方法执行:

EXECUTE au_info Dull, Ann 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。