存储过程示例整理
--列出服務器上所有的數據庫
exec sp_databases--改數據庫的名字
exec sp_renamedb 'QQDB', 'QQ'--查看表users中的列
exec sp_columns users
《此組件已作為此服務器安全配置的一部分而被關閉》的解決辦法
use?master exec sp_configure 'show advanced options',1??--顯示高級配置信息 go reconfigure --重新配置 go exec sp_configure 'xp_cmdshell',1??--打開xp_cmdshell選項 go reconfigure --重新配置 go--在d盤下面創建目錄testproc exec?xp_cmdshell 'mkdir d:\testproc',no_output-----//用戶自定義存儲過程///------- ---1.創建無參數的存儲過程※ use?QQDB --需求:查詢李四賬戶的余額,如果大于500,輸出大于500,否則輸出小于500 go create??proc usp_findPriceByLs as --sql語句 declare?@yue int select?@yue = price from?bank where?name?= '李四' if(@yue>500) begin print '大于500' end else begin print '小于500' end---調用存儲過程 exec usp_findPriceByLs執行結果:
----------------------查詢user表中的所有信息的存儲過程 if exists (select?* from?sysobjects where?name?= 'usp_FindUsersAll') drop?proc usp_FindUsersAll go create?proc usp_FindUsersAll as select?* from?users go--調用存儲過程 exec usp_FindUsersAll執行結果:
---------///創建帶輸入參數的存儲過程///----- --需求:根據姓名和地址查詢用戶信息 if exists (select?* from?sysobjects where?name?= 'ups_findUsersByUnameAndUaddress') drop?proc ups_findUsersByUnameAndUaddress go create?proc ups_findUsersByUnameAndUaddress @name?varchar(50) , --姓名 @address varchar(50) --地址 as select?* from?users?where?uname = @name?and?uaddress =@address go----調用帶輸入參數的存儲過程 exec ups_findUsersByUnameAndUaddress '王炎霸','山西呂梁'執行結果:
--------------/創建帶輸入和輸出參數的存儲過程//----- --需求:根據姓名查詢密碼 if exists (select?* from?sysobjects where?name?= 'usp_findPassByName') drop?proc usp_findPassByName go create?proc usp_findPassByName @name?varchar(50), @pass varchar(50) output??--輸出參數 as select?upass from?users?where?uname = @name go--調用帶輸入和輸出參數的存儲過程 declare?@pass varchar(50) --存放輸出參數的值 exec usp_findPassByName '薛康',@pass output執行結果:
總結
- 上一篇: 如何查看HP电脑硬件型号?
- 下一篇: hp打印机主机名称怎么查?