數據庫存儲過程的寫法


  系統數據庫:

exec sp_databases; --查看數據庫
exec sp_tables;        --查看表
exec sp_columns student;--查看列
exec sp_helpIndex student;--查看索引
exec sp_helpConstraint student;--約束
exec sp_stored_procedures;
exec sp_helptext 'sp_stored_procedures';--查看存儲過程創建、定義語句 經常用到這句話來查看存儲過程,like sp_helptext sp_getLoginInfo.
exec sp_rename student, stuInfo;--修改表、索引、列的名稱
exec sp_renamedb myTempDB, myDB;--更改數據庫名稱
exec sp_defaultdb 'master', 'myDB';--更改登錄名的默認數據庫
exec sp_helpdb;--數據庫幫助,查詢數據庫信息
exec sp_helpdb master;

 

  存儲過程基本語法:

CREATE  PROC[EDURE]  存儲過程名

              @參數1  數據類型 = 默認值,

               …… ,

              @參數n  數據類型 OUTPUT

            AS

            SQL語句

    GO

 

  實例:(制作考試分數條)

create proc sp_scorerank
    @Gid varchar(10),
    @Cid varchar(10)
    as
        begin
            if(@Cid='')
                begin
                    select a.StuName,Chinese+English+math Total,b.Chinese,b.English,b.Math,
                    Rank() over(order by Chinese+English+math desc) 
                    from Students a left join Score b on a.StuID=b.SID
                    where a.GradeID=@Gid 
                end
            else
                begin
                    select a.StuName,Chinese+English+math Total,b.Chinese,b.English,b.Math,
                    Rank() over(order by Chinese+English+math desc) 
                    from Students a left join Score b on a.StuID=b.SID
                    where a.GradeID=@Gid and a.ClassID=@Cid 
                end
        end
    go

    exec sp_scorerank 'G02',''

  查詢結果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM