一.认识MySQL 中的变量

在MySQL中变量的绝大部分的用处都是在存储过程和存储函数中。

当然也可以抛开存储过程和存储函数来单独使用。

变量在MySQL中的运用和在编程语言中的运用大体相同

二.MySQL中变量的实际分类

其实可以简单的将MySQL中的变量分为局部变量全局变量

上面说了变量其实大多都是在存储过程和函数中运用到的比较多,

其实局部变量对应的就是存储过程中的局部参数

全局变量对应的就是存储过程中的会话参数

三.局部变量

3.1 注意点

1.首先局部变量必须存在于存储过程或者存储函数中,而且也是在定义他的begin/***/end的集合中有效,不能定义在存储过程或者存储函数以外的地方。

2.可以为局部变量指定默认值,否则全部默认为null

3.2创建一个局部变量

语法:declare  变量名  变量类型

例子:

use study;
delimiter //
create procedure pro2()
reads sql data
begin
declare num1 int default 10;
select num1;
begin
declare num1 int default 20;
select num1;
end;
end;
//

四.创建一个全局变量

语法:set @变量名 = 初始化值

对于全局变量是可以单独存在的。

例子:

set @num =10;
set @num1 ="我是一个全局变量";

五.给变量赋值

除了在创建变量时给变量赋值外,我们还可以通过查询语句来赋值。

语法:select  列名  into   变量名   from  表名  where......

MySQL中变量的使用的更多相关文章

  1. mysql中变量赋值

    http://www.cnblogs.com/qixuejia/archive/2010/12/21/1913203.html sql server中变量要先申明后赋值: 局部变量用一个@标识,全局变 ...

  2. 转:MySQL中变量的定义和变量的赋值使用(转)

    MySQL中变量的定义和变量的赋值使用(转)   说明:现在市面上定义变量的教程和书籍基本都放在存储过程上说明,但是存储过程上变量只能作用于begin...end块中,而普通的变量定义和使用都说的比较 ...

  3. MySQL中变量的总结

    本文对MySQL中局部变量.用户变量.系统变量的理解进行总结. 一.局部变量 局部变量由DECLARE语句声明: DECLARE var_name[,...] type [DEFAULT value] ...

  4. mysql中变量

    mysql中的变量: mysql中,有两种变量形式: 普通变量: 不带“@”符号: 定义形式: declare  变量名  类型名   [default  默认值]: //普通变量必须先这样定义 赋值 ...

  5. MySQL中变量的定义和变量的赋值使用(转)

    说明:现在市面上定义变量的教程和书籍基本都放在存储过程上说明,但是存储过程上变量只能作用于begin...end块中,而普通的变量定义和使用都说的比较少,针对此类问题只能在官方文档中才能找到讲解. 前 ...

  6. mysql中变量的定义

    mysql中的变量定义 mysql的变量分为系统变量和用户变量,mysql系统定义的变量是系统变量,用户自己定义的变量为用户变量.对于系统变量,用户只能够改变它的值不能够创建新的系统变量.对于用户变量 ...

  7. mysql中变量character_set_connection的具体作用

    如题.通常的使用中,character_set_client,character_set_connection这两个变量的值是一样的,也就是说查询不需要进行编码转换.这样看来变量character_s ...

  8. MySQL中变量的用法——LeetCode 178. Rank Scores

    Write a SQL query to rank scores. If there is a tie between two scores, both should have the same ra ...

  9. MySQL中@变量的妙用

    背景需求:如下图所示,需要将下面为空的字段值,填充为第一行所示的值 第一次处理失败了 第二次使用成功 使用的SQL语句如下: set @tmp_var=''; select b.id,b.table_ ...

随机推荐

  1. burpsuite只拦截特定网站数据包教程

    一.背景说明 在配置burpsuite代理截包时经常会遇到这样的情况: 浏览器经常自己发一些包(收集用户信息),干挠渗透测试人员对目标网站的检测: 如果是代理手机,那就是很多APP都时不时发一些包,干 ...

  2. linux文件权限多一个+啥意思

    linux文件权限显示多了一个+,说明添加了acl权限 使用getfacl filename 能查看到 ower group other  还多了一个php 用户有rwx权限. acl详解 转: ht ...

  3. 苹果手机 disabled 的背景颜色没有

    解决方案 .class disabled{ background-color: rgb(235, 235, 228); opacity:1}

  4. :after 写三角形 border

    .tooltip:after { content: ''; position: absolute; border: 6px solid #5190ac; border-color: #5190ac t ...

  5. npm 安装nodesass 或者包含nodesass的脚手架工具报错问题

    由于最近vue转angular 但是angular版本太多了,好多项目是angularv4 有的是v5 近日angular又发布了v6,依赖的东西好多不一样,结果npm install 时候,总是出现 ...

  6. rational rose java.lang.classNotFoundException

            C:\Windows\Java\TrustLib\RoseDataModeler.zip;C:\Windows\Java\TrustLib\comwrappers.zip;C:\Win ...

  7. 关于datetimepicker只显示年、月、日的设置

    如下是只显示月的sample code: <link rel="stylesheet" href="css/datetimepicker/bootstrap-dat ...

  8. 【SQL】glob 和 like 的区别

    LIKE 和 GLOB 都可以用来匹配通配符指定模式的文本值.如果搜索表达式与模式表达式匹配,LIKE 运算符将返回真(true),也就是 1 区别: (1)使用的通配符不一样 like:  百分号( ...

  9. VIM编辑配置文件基本操作

    vim  /etc/apt/sources.list 按insert键进入编辑状态 编辑完成以后按ESC退出编辑状态 输入 ":"进入命令状态,常用命令: 1.W:write ,写 ...

  10. laravel中使一段文字,限制长度,并且超出部分使用指定内容代替

    {{str_limit($post->content,100,'....')}} 文字内容超出100个字,就用省略号显示