- 浏览: 250341 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (192)
- 技术研究学习 (19)
- 工作总结 (4)
- spring3.x (11)
- mail (2)
- jar (2)
- FCKeditor (1)
- quartz (2)
- json (1)
- jdbc (5)
- struts2 (6)
- java基础 (18)
- jboss (3)
- IT名称解析 (1)
- 测试工具 (2)
- 工作趣谈 (1)
- 数据库 (8)
- js (8)
- jquery (1)
- mysql (20)
- Sql (3)
- Oracle (1)
- easyui (0)
- log4j (1)
- 源码研究 (1)
- Jasper Report (0)
- Jbpm4 (4)
- xml (1)
- ireport (0)
- javavm (1)
- sitemesh (5)
- compass (1)
- jvm (1)
- ext (1)
- lucene (0)
- cxf (1)
- Blazeds (0)
- Resteasy (1)
- jaxb (1)
- tomcat (1)
- Rmi (1)
- BoneCP (1)
- velocity (3)
- OSCache (1)
- EHCache (1)
- 高性能开发 (9)
- 设计模式 (0)
- 网络协议应用 (1)
- Ibatis (1)
- powerdesigner (1)
- 架构师之路 (2)
- memcached (4)
- MapReduce (1)
- 测试组 (1)
- 图像处理 (2)
- LoadRunner (2)
- 报表 (1)
- 负载均衡 (1)
- 分布式 (3)
- c# (1)
- java中一些特殊问题 (3)
- java 8 (1)
- Mogodb (1)
- 项目设计与实现 (2)
- Ubuntu (1)
- eclipse (1)
- gradle (1)
- 私有云 (1)
- redis (1)
- 移动前端 (1)
最新评论
来源:http://blog.sina.com.cn/s/blog_5198c7370100hvjq.html
通常begin-end用于定义一组语句块,在各大数据库中的客户端工具中可直接调用,但在mysql中不可。 begin-end、流程控制语句、局部变量只能用于函数、存储过程内部、游标、触发器的定义内部。以下的'[]'表示可选内容。 1、begin-end: [begin_label:] BEGIN [statement_list] END [end_label] 如: begin select * from user; end 2、if语句 IF search_condition THEN statement_list [ELSEIF search_condition THEN statement_list] ... [ELSE statement_list] END IF 如: BEGIN SET b=110; IF b>0 THEN SELECT a+b; END IF; 注意,end if后面要根据情况加';',有些不爽啊,不像sqlserver那样 3、while语句 [begin_label:] WHILE search_condition DO statement_list END WHILE [end_label] 如: BEGIN WHILE a<10 DO SET a=a+1; END WHILE; SELECT a; END// 4、局部变量 DECLARE var_name[,...] type [DEFAULT value] 如 declear a int(2) default 2; 注意该语句使用的地方(不能在外部程序中使用) 5、赋值语句set SET var_name = expr [, var_name = expr] ... 如set a=5;set a=a+4; 赋值的所有操作都要使用set语句,直接使用a=5的操作是非法的 注意该语句使用的地方(不能在外部程序中使用) 6、@操作符 @a用于定义一个全局变量,该变量的生命周期只在本次连接。 set @a=3;赋值语句 set @a=b语句可存在于任何语句块中 总结: mysql与sqlserver的语法还是有区别的如变量的声明,流程控制块,begin-end语句等都有差异,语法更加严格啰嗦,个人感觉不是很爽。另外mysql还有一些控制语句,如 leave Label,Loop label,repeat until等,都有些啰嗦繁琐,而这些语句实现的功能借助前面几个都可以实现,故在此不述
发表评论
-
MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践
2013-08-26 13:12 956来源:http://www.cnblogs.com/luckc ... -
日志回滚,mysql优化
2012-09-25 13:40 1959原创作品,允许转载,转载时请务必以超链接形式标明文章 原始 ... -
MySQL 自增字段为何出错
2012-09-25 13:39 1227来源:http://www.zioer.com/mysql-自 ... -
mysql 执行顺序 SQL语句执行顺序分析
2012-09-21 16:48 9512来源:http://blog.sina.com.c ... -
MySQL查询中的非空问题
2012-09-21 16:52 2150MySQL查询是我们经常 ... -
Mysql字符串截取函数SUBSTRING的用法说明
2012-09-24 09:52 955来源:http://www.jb51.net/article/ ... -
Mysql点滴-CAST/CONVERT 类型转换函数
2012-09-20 11:19 911CAST() 和CONVERT() 函数可用来获取一个 ... -
mysql字符串向整型转换
2012-09-20 11:19 1141mysql字符串向整型转换 SELECT MAX(C ... -
mysql as 别名与 join 多表连接语法
2012-09-20 11:19 2399在MySQL中,使用AS关键字为字段、表、视图取别名,或者 ... -
理解MySQL——复制(Replication)
2012-09-24 09:52 860来源:http://www.cnblogs.com/hustc ... -
MySQL字符集 GBK、GB2312、UTF8区别 解决 MYSQL中文乱码问题
2012-09-24 09:52 1097MySQL中涉及的几个字符集 character- ... -
MySql 申明变量以及赋值
2012-09-25 13:40 811sql server中变量要先申明后赋值: 局部变 ... -
mysql变量使用总结
2012-09-21 16:53 879来源:http://www.cnblogs.com ... -
Mysql中文乱码问题完美解决方案
2012-09-18 14:47 635MySQL会出现中文乱码的原因不外乎下列几点: 1.se ... -
MySQL中快速插入大数据量和语句优化的相关技巧
2012-09-18 14:00 1055来源:http://it.100xuexi.com/view/ ... -
mysql中利用insert对自增字段进行插值
2012-09-18 11:34 1635[color=blue][/color]INSERT和REPL ... -
mysql获取插入、添加记录的自动编号
2012-09-18 11:14 1579[color=indigo][/color]如何获取某个表中的 ... -
MYSQL中如何设置列默认值的介绍(时间)
2012-09-17 10:56 998来源:http://tech.it168.com/o/2006 ... -
mysql添加注释
2012-09-17 10:14 827mysql允许在sql 代码中使用注释。这对于说明存放在文件中 ...
相关推荐
局部变量仅限于在存储过程和函数内的BEGIN和END语句块中使用,它们提供了一种在特定代码段内存储和操作数据的方法。定义用户变量通常用`SET @变量名 = 值`,查看其值可使用`SELECT @变量名`。 在实际应用中,掌握...
MySQL中的变量可以分为三类:系统变量、用户定义变量和局部变量。 - **系统变量**: - **全局变量**:针对所有会话有效。 - **会话变量**:仅对当前会话有效。 - **查看系统变量**: ```sql SHOW [SESSION | ...
6. **变量声明与赋值**:在存储过程中,可以声明并使用局部变量,有助于临时存储数据。 7. **异常处理**:使用`DECLARE`和`BEGIN...END`块可以定义异常处理,增强程序的健壮性。 8. **返回值**:存储过程可以通过`...
MySQL 中提供了多种流程控制语句,包括 `IF` 语句、`CASE` 语句、`LOOP` 语句、`REPEAT` 语句、`WHILE` 语句等。 * `IF` 语句的语法是: ``` IF search_condition THEN statement_list [ELSEIF search_condition ...
一、变量的定义 mysql中变量定义用declare来定义一局部变量,该变量的使用范围只能在begin…end 块中使用,变量必须定义在复合语句的开头,并且是在其它语句之前,也可以同时申明多个变量,如果需要,可以使用default...
此外,MySQL还支持局部变量和游标,使得在存储过程中处理数据更加灵活。 在性能优化方面,存储过程可以通过缓存执行计划来提升数据库性能。然而,也需要注意过度使用存储过程可能带来的问题,如代码重复、调试困难...
mysql局部变量,只能用在begin/end语句块中,比如存储过程中的begin/end语句块。 其作用域仅限于该语句块。 — declare语句专门用于定义局部变量,可以使用default来说明默认值 declare age int default 0; — 局部...
局部变量需要在begin...end语句块之间使用declare命令进行定义,并指定数据类型,之后才能使用set命令或select语句为其赋值。 MySQL表达式是用于构建查询或数据操作的语句,可按值类型分为字符串类型、数值类型和...
在MySQL 5.0中,存储过程支持多种特性,包括参数、流程控制结构(如IF-ELSE、WHILE、REPEAT等)、局部变量以及异常处理。 1. **创建存储过程**:创建存储过程使用`CREATE PROCEDURE`语句,可以包含输入、输出或输入...
- **DECLARE**语句用于声明局部变量,如`DECLARE var_name type [DEFAULT value]`。 - **SET**语句用于给变量赋值,例如`SET var_name = expr`。在存储过程中,可以使用`IF...ELSE`结构进行条件判断并赋值。 6. *...
在定义存储过程时,使用了特定的语法结构:“create PROCEDURE”,并通过“begin...end”语句块定义过程的具体操作。定义完存储过程后,使用“delimiter”关键字更改语句结束符,以便能够正确地定义存储过程或函数中...
对于MySQL 5.0,特别要注意的是,这个版本引入了许多新的特性,包括改进的存储过程支持,比如支持局部变量、游标和事务控制。局部变量只在存储过程内部有效,不会影响全局变量。游标允许在存储过程中逐行处理结果集...
#### 七、局部变量与控制流 ##### 局部变量 - **用途**:用于存储临时数据。 - **语法示例**: ```sql DECLARE @variable datatype; SET @variable = value; ``` ##### IF ELSE - **用途**:根据条件执行不同...
在这个存储过程中,我们使用了`DECLARE`声明了一个局部变量`l_sql`,然后通过`CONCAT_WS`函数将更新表、列、值和条件组合成一个完整的`UPDATE`语句。接着,`SET @sql = l_sql;`将这个动态构建的SQL语句赋值给预定义...
在MySQL中,条件主要用在`WHERE`子句中,以过滤查询结果,或在`IF...ELSE`结构中控制流程。条件可以基于各种比较运算符(如`=`, `, `>`, `, `>=`, `<>`),逻辑运算符(如`AND`, `OR`, `NOT`),以及函数(如`IS ...