MySQL学习笔记续

  1. 赋值

    set @用户变量名=值;或者

    set @用户变量:=值;

    select @用户变量名:=值;

    通过select into

    select 字段 into 变量名 from 表;

    使用

    select @用户变量名;

    局部变量

    作用域:仅仅在定义它的begin end中有效

    声明:

    declare 变量名 类型

    declare 变量名 类型 default 值;

    赋值

    set 局部变量名=值;或者

    set 局部变量名:=值;

    select @局部变量名:=值;

    通过select 字段 into 局部变量名 from 表

    使用:

    select 局部变量名;

    (用户定义的变量是特定于会话的。一个客户端定义的用户变量不能被其他客户端看到或使用。(例外:有权访问Performance Schema user_variables_by_thread表的用户可以看到所有会话的所有用户变量。)给定客户端会话的所有变量在该客户端退出时自动释放。

    用户变量名不区分大小写。名称的最大长度为64个字符。)


  2. 存储过程和函数

    存储过程和函数,类似于java中的方法

    好处

    1.题号代码的复用性

    2.简化操作

    存储过程

    含义:一组预先编译号的SQL语句的集合,理解成批处理语句

    1.提高代码的复用性

    2.简化操作

    3.减少编译次数并且减少了和数据库服务器的连接次数,提高了效率

    创建语法

    create procedure 存储过程名(参数列表)

    begin

    存储过程体(一组合法的SQL语句)

    end

    参数列表包含三个部分

    参数模式,参数名,参数类型

    举例子

    in stunmae varchar(20)

    参数模式

    in 该参数可以作为输入

    out 该参数可以作为输出

    inout 既可以作为输入也可以作为输出

    如果存储过程体仅仅只有一句话begin end可以省略

    空参列表

    delimiter $

    create procedure myp1()

    begin

    ​ insert into admin(username,password)

    ​ values(x,x)

    end$

    调用

    call myp1()$

    in参数

    例子

    create procedure myp3(in username varchar(10),in password varchar(10))

    begin

    ​ select count(*)

    ​ from admin

    ​ where admin.username=username

    ​ and admin.password=password;

    end$

    out输出型

    create procedure myp5(in beautyname varchar(20),out boyname varchar(20))

    begin

    ​ select bo.boyname into boyname

    ​ from boys bo

    ​ inner join beauty b on bo.id=b.boyfriend_id

    ​ where b.name=beautyname

    end$

    调用

    call myp5(‘小小’,@bname)$

    select @bname$

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值