mysql 入门基础(5)—存储过程和游标
来源:互联网 发布:php文件上传过程 编辑:程序博客网 时间:2024/06/05 18:27
定义:存储过程是SQL语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理。
优点:
1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据 库执行速度。
2.当对数据库进行复杂操作时(如对多个表进行Update,Insert,Query,Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。
3.存储过程可以重复使用,可减少数据库开发人员的工作量
4.安全性高,可设定只有某此用户才具有对指定存储过程的使用权
缺点:移植性很低,因为不同的数据库,语法不一样
Ø 创建第一个存储过程
使用call命令调用我们的存储过程
navicat编辑器里把delimiter隐藏了,所以不写结束标记符!
最后也可以删除存储过程
Ø 参数
输入参数:in | 输出参数:out | 输入输出参数:inout
# in输入参数
# out输出参数
Mysql全局变量:
查看所有全局变量:show variables
查看某个全局变量:select @@变量名
修改全局变量:set变量名=值
了解:
character_set_client:指定mysql服务器接受数据的编码默认utf-8
character_set_results:指定mysql服务器输出数据的编码默认utf-8
之前输出数据库的utf-8格式数据乱码可以改变控制台的编码格式默认是gbk,换成utf-8应该就可以,具体做法:
http://blog.csdn.net/freedom2028/article/details/16632215,当然还可把character_set_client和character_set_results值换成gbk;
Mysql会话变量:只存在于当前客户端与数据库服务器的一次连接中。断开后会话变量会自动消失。
定义会话变量:set@变量=值
查看会话变量:select@变量
Mysql局部变量:在存储过程中使用的变量,作用范围只在存储过程中,如果存储过程执行完毕,局部变量就丢失。
# inout输入输出参数
# 带有判断添加的存储过程
# 带有循环功能的存储过程
# 使用查询结果作为返回值
Ø 游标的使用
游标简单来说就是查询出来的数据索引,通过对游标的操作(第一个位置、最后一个位置、上一个位置、下一个位置)可以遍历出数据。结合这个特性我们可以批量的更新,插入,删除数据等操作。
- mysql 入门基础(5)—存储过程和游标
- MySQL存储过程和游标
- MySQL存储过程和游标
- MySQL数据库入门(三)存储过程 游标
- MYSQL的存储过程入门游标
- 《MySQL入门很简单》学习笔记(14)之第14章存储过程和函数(关键词:MySQL/存储过程/存储函数/光标/游标)
- MYSQL 存储过程,游标和触发器
- mysql 存储过程,游标和错误提示
- mysql 游标和存储过程练习
- MySQL 中的存储过程和游标
- mysql存储过程和游标遍历
- mysql存储过程和游标使用实例
- Mysql使用存储过程和游标
- mysql存储过程+游标
- mysql 游标+存储过程
- mysql 存储过程 游标
- mysql 存储过程游标
- MySQL 存储过程 游标
- 1140 Jam的计数法 2006年NOIP全国联赛普及组
- Hibernate 继承关系 对象关系映射--union-subclass ,测试 crud
- 编程规范 --- 函数 过程
- 浅谈响应式
- "汉诺塔"算法-之通俗易懂,简单的原理-java编程
- mysql 入门基础(5)—存储过程和游标
- appcan中的微信分享与qq分享
- MongoDB:[HostnameCanonicalizationWorker] Failed to obtain address information for hostname
- MySQL环境部署
- cuda gpu CTAMergesort
- ubuntu下使用Qt 编译时cannot find -lGL错误解决
- 网卡、网关、网桥、集线器、中继器、交换机、路由器
- 上帝与集合的正确用法 [Bzoj 3884]
- CentOS上安装Mplayer播放器