zoukankan      html  css  js  c++  java
  • Procedure学习

    --use PassportForm --if(exists(select * from sys.objects where name='proc_get_passport')) --drop proc proc_get_passport --go --create proc proc_get_passport --as --select * from passport --exec proc_get_passport --alter proc proc_get_passport --as --select userName from passport
    
    --if(OBJECT_ID('proc_find_user','p') is not null) --drop proc proc_find_user --go --create proc proc_find_user(@resultNoStart nvarchar, @resultNoEnd nvarchar) --as --select * from Passport where resultNo between @resultNoStart and @resultNoEnd --go --exec proc_find_user '-1','1'
    
    --if(OBJECT_ID('proc_findUserByName','p')is not null) --drop proc proc_findUserByName --go --create proc proc_findUserByName(@userName nvarchar(20)='%j%', @nextUserName nvarchar(20)='%') --as --select * from passport where userName like  @userName and userName like @nextUserName; --go --exec proc_findUserByName --exec proc_findUserByName '%b%', '%100%'
    
    --alter proc proc_findUserByName(@userName nvarchar(20)='%b%',@nextUserName nvarchar(20)='%') --as --select * from passport where userName like @userName or userName like @nextUserName; --go
    
    --exec proc_findUserByName '%y%', '%9%'
    
    ----if(OBJECT_ID('proc_getUserName','p')is not null) ----drop proc  proc_getUserName ----go
    
    --create proc proc_getUserName(@resultNo varchar(10),@name nvarchar(20) out, @userIP varchar(12) output) --as --select @name=username, @userIP=userIp from PassportForm where resultNo=@resultNo; --go
    
    --alter proc proc_getUserName(@resultNo varchar(10),@name nvarchar(20) out, @userIP varchar(12) output) --as --select @name=username, @userIP=userIp from passport where resultNo=@resultNo; --go
    
    --declare @userName nvarchar(20),@userIP nvarchar(12),@resultNo nvarchar(10); --set @resultNo='0'; ----难道@resultNo一定要放在前面?如果不放最前面,会报:形参 "@resultNo" 未声明为 OUTPUT 参数,但传递进来的实参请求输出。 ----跟存储过程的参数顺序必须一样 --exec proc_getUserName  @resultNo, @userIP output, @userName out; --select @userIP, @userName; --print @userName+'#'+@userIP;
    
    --if(OBJECT_ID('proc_temp_encryption','p') is not null) --drop proc proc_temp_encryption --go --create proc proc_temp_encryption --指示 SQL Server 将 CREATE PROCEDURE 语句的原始文本转换为模糊格式。模糊代码的输出在 SQL Server 的任何目录视图中都不能直接显示。 --对系统表或数据库文件没有访问权限的用户不能检索模糊文本 --with encryption --as --select * from passport ; --go
    
    --exec proc_temp_encryption; use PassportForm --if(OBJECT_ID('proc_cursor','p')is not null) --drop proc proc_cursor --go --create proc proc_cursor ----cursor 数据类型只能是 OUTPUT 参数,并且必须带有 VARYING 关键字 --@cur cursor varying output --as --set @cur = cursor forward_only static for --select userName,resultNo,userIp from dbo.passport; --open @cur; --go
    
    --declare @exec_cur cursor; --declare @resultNo nvarchar(10),@userName nvarchar(20), @userIP nvarchar(10);
    
    --exec proc_cursor @exec_cur output; --fetch next from @exec_cur into @userName,@resultNo,@userIP; --while(@@FETCH_STATUS =0) --begin --fetch next from @exec_cur into @userName, -- @resultNo,@userIP; --print 'userName:'+@userName --end --close @exec_cur; --deallocate @exec_cur;
    
    --if(OBJECT_ID('proc_page','p') is not null) --drop proc proc_page; --go --create proc proc_page(@pageIndex int,@pageSize int) --as --declare @startRow int, @endRow int
    
    --set @startRow=(@pageIndex-1)*@pageIndex+1 --set @endRow=@startRow+@pageSize-1; ----ROW_NUMBER():返回结果集分区内行的序列号,每个分区的第一行从 1 开始 ----OVER 子句与函数一起使用,以便计算各种聚合值 --select * from (select *, ROW_NUMBER() over(order by id desc) as number from Test.dbo.TestTable) t where t.number between @startRow and @endRow; --go
    
    --alter proc proc_page(@pageIndex int,@pageSize int) --as --declare @startRow int, @endRow int; --set @startRow=(@pageIndex-1)*@pageSize+1 --set @endRow=@startRow+@pageSize-1; --select * from (select *, ROW_NUMBER() over(order by id desc) as number from Test.dbo.TestTable) t where t.number between @startRow and @endRow; --go
    
    --exec proc_page 2,15
    人总要去积累生活、工作上的点点滴滴,慢慢的进步,以后回头看看,笑笑,顺便学学,人都说回忆才是最美的。
  • 相关阅读:
    第二次作业循环语句
    c语言01次作业分支,顺序结构
    PAT 1027. Colors in Mars
    PAT 1026 Table Tennis
    PAT 1035 Password
    PAT 1038. Recover the Smallest Number
    PAT 1028 List Sorting (25)
    PAT 1041 Be Unique (20)
    PAT 1025 PAT Ranking
    1037. Magic Coupon
  • 原文地址:https://www.cnblogs.com/jueye/p/2973898.html
Copyright © 2011-2022 走看看