zoukankan      html  css  js  c++  java
  • 存储过程笔记

    存储过程笔记
    
    @为局部变量定义
    @@为全局变量定义
    
    1.可传参数的存储过程例子(传入参数)
    
    表:person
    
    字段名:id    name     age     sex
           ----------------------------
            1     张三     28      男
    	2     李四     25      男
    	3     王五     23      女
    
    
    存储过程实例:
    ----------------------------------------------
    -- 建立名为selectInfo的存储过程,版本为1
    CREATE PROCEDURE selectInfo;1
    	-- 设置一个要传入的参数字符串类型的name
    	@name varchar(10) 
    AS
    BEGIN
    	-- 查询出所有参数为@name的记录
    	select * from person where name=@name 
    END
    GO
    
    
    -- 执行存储过程selectInfo并且传name参数为‘张三’的所有记录
    exec selectInfo '张三'
    ----------------------------------------------
    
    
    
    2.可传参数的存储过程例子(传出参数)OUTPUT
    ----------------------------------------------
    CREATE PROCEDURE selectInfo2
    	-- 设置全局变量count,并且为输出参数
    	@@count int OUTPUT
    AS
    BEGIN
    	select @@count = count(id) from person where name='张三' 
    END
    
    -- 执行存储过程
    exec selectInfo2
    
    -- 返回结果
       @@count
    ----------
       3
    
       Return Value
    ---------------
       0
    
    
    
    
    =================================================================
    
    
    Transact-Langage语言语法
    
    1.局部变量定义
    * 定义关键字:declare 
    * 名称的第一个字符必须为@
    例:
    declare @myvar int 
    
    * 赋值通过set 或select 
    
    例:建立表testTable,在表中插入数据0-25,a-z
    ---------------------------------------------------
    Create Table testTable (_num Int, _char Char(3))
    
    Declare @myCounter Int --定义整型变量@myCounter
    
    Set @myCounter = 0  --计数器myCounter初值
    
    While(@myCounter <26)
    Begin
       Insert Into testTable Values
    	(@myCounter, Char( (@myCounter + ASCII('a') ) )
       set @myCounter = @myCounter + 1
    End
    
    2. 流程控制语句
    *If ... else
    
    if @@rowcount = 0 
     print 'Warning!'
    else
     print 'Note!'
    
    *语句块:
    Begin
       语句块
    End
    
    * While
      Begin
    	...
    	Break
            ...
      	Continue
      End
    

      

  • 相关阅读:
    MySql常用命令
    多线程
    redhat7.7(centOS7)安装ORACLE 11g出坑教程及问题总结与解决
    使用 CGImageRef 出现的crash
    leetcode238. 除自身以外数组的乘积
    通过位运算实现求和
    leetcode求1+2+……+n
    leetcode101. 对称二叉树
    leetcode198. 打家劫舍
    leetcode394. 字符串解码
  • 原文地址:https://www.cnblogs.com/cyjch/p/2340422.html
Copyright © 2011-2022 走看看