系統數據庫:
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',''
查詢結果: