MYSQL进阶学习笔记四:MySQL存储过程之定义条件,处理过程及存储过程的管理!(视频序号:进阶_11,12)
知识点五:MySQL存储过程之定义条件和处理过程及存储过程的管理(11,12)
定义条件和处理:
条件的定义和处理可以用来定义在处理过程中遇到的问题时相应的处理步骤。
DECLARE CONTINUE HANDLER FOR SQLSTATE ‘错误代码值’SET @变量=变量值
存储过程的管理:
存储过程的修改:
ALTER
{PROCEDURE | FUNCTION} sp_name
[characteristic …]
characteristic:
{CONTAINS SQL | NO SQL |
READS SQL DATA | MODIFIES SQL DATA}
| SQL SECURITY {DEFINER
| INVOKEY }
|
COMMENT ‘string’;
注释:NO SQL表示子程序中不包含SQL语句,
READS SQL DATA 表示子程序中包含读数据的语句,
MODIFIES SQL DATA 表示子程序中包含写数据的语句
SQL SECURITY {DEFINER | INVOKEY }指明谁有权限执行
DEFINER表示只有定义者自己才能够执行;
INVOKEY 表示调用者可以执行
COMMENT ‘string’是注释信息
查看数据库下的存储过程:
SHOW PROCEDURE STATUS WHERE db=’数据库名’;
查看当前数据库下面的存储过程的列表:
SELECT specific_name FROM mysql.proc;
查看存储过程的内容:
SELECT specific_name,body FROM mysql.proc
WHERE specific_name = 存储过程名称;
或者:SHOW CREATE PROCEDURE 存储过程名称.
删除存储过程:
DROP PROCEDURE IF EXISTS存储过程名称
-- 定义条件和处理
--加入是对的,但执行报错,因为userinfo中if为一的以及存在
DELIMITER //
CREATE PROCEDURE p_insertDemo() BEGIN
INSERT INTO userinfo VALUES(1,'ui','');
INSERT INTO employees VALUES(5098,'1990-11-11','uim','jum','2000-11-12');
END
// DELIMITER ;
CALL p_insertDemo2(); --对的
DELIMITER //
CREATE PROCEDURE p_insertDemo2() BEGIN
DECLARE CONTINUE HANDLER FOR SQLSTATE '' SET @x=1;
INSERT INTO userinfo VALUES(1,'ui','');
INSERT INTO employees VALUES(5098,'1990-11-11','uim','jum','M','2000-11-12');
END
// DELIMITER ;
CALL p_insertDemo2();
定义条件和处理过程测试
MYSQL进阶学习笔记四:MySQL存储过程之定义条件,处理过程及存储过程的管理!(视频序号:进阶_11,12)的更多相关文章
- Redis 学习笔记四 Mysql 与Redis的同步实践
一.测试环境在Ubuntu kylin 14.04 64bit 已经安装Mysql.Redis.php.lib_mysqludf_json.so.Gearman. 点击这里查看测试数据库及表参考 本文 ...
- MYSQL初级学习笔记四:查询数据的操作DQL(SELECT基本形式)(26-35)
知识点六:查询数据的操作DQL(SELECT基本形式)(26-35) CREATE DATABASE IF NOT EXISTS cms DEFAULT CHARACTER SET utf8; USE ...
- mysql的学习笔记(四)
---恢复内容开始--- 1.插入操作 INSERT (1)INSERT table_name(col_name,...) VALUES(...),(....) CREATE TABLE user( ...
- MySql学习笔记四
MySql学习笔记四 5.3.数据类型 数值型 整型 小数 定点数 浮点数 字符型 较短的文本:char, varchar 较长的文本:text, blob(较长的二进制数据) 日期型 原则:所选择类 ...
- openresty 学习笔记四:连接mysql和进行相关操作
openresty 学习笔记四:连接mysql和进行相关操作 毕竟redis是作为缓存,供程序的快速读写,虽然reidis也可以做持久化保存,但还是需要一个做数据存储的数据库.比如首次查询数据在red ...
- MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- 基于【 MySql 】二 || mysql详细学习笔记
mysql重点学习笔记 /* Windows服务 */ -- 启动MySQL net start mysql -- 创建Windows服务 sc create mysql binPath= mysql ...
- Mysql事务学习笔记
Mysql事务学习笔记 1.事务概述 事务是数据库的执行单元,它包含了一条或多条sql语句,进行的操作是要么全部执行,要么全部都不执行. 2.事务执行命令 语法格式: start transactio ...
- MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
随机推荐
- HDU 5001 Walk (暴力、概率dp)
Walk Time Limit: 30000/15000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Sub ...
- Java学习:二 基础
2014 - 5 - 22 上午 Java对大小写敏感. 点号(.)用于调用方法,Java的能用语法是: object.method(parameters); Java中的常量声明使用fina ...
- treetable 用法小例
插件地址:http://pan.baidu.com/s/1kVf0Kcfcript src="/plugins/jQuery/jQuery-2.1.4.min.js">< ...
- Flutter学习(一)——搭建开发环境(Windows)
久闻 Flutter 大名,今天终于有时间体验一下了 ٩(๑>◡<๑)۶ 官网:https://flutter.dev/ 中文官网:https://flutterchina.club/ 一 ...
- 真的了解CDN服务吗?
Im CDN,WOW,COOL CDN知识详解 全称:Content Delivery Network或Content Ddistribute Network,即内容分发网络,CDN是构建在网络之上的 ...
- 2018 ICPC 徐州网络预赛 Features Track (STL map pair)
[传送门]https://nanti.jisuanke.com/t/31458 [题目大意]有N个帧,每帧有K个动作特征,每个特征用一个向量表示(x,y).两个特征相同当且仅当他们在不同的帧中出现且向 ...
- synchronized初识
作用域: 1.对象实例内--->People jack = new Jack(); ①此作用域内的synchronized锁 ,可以防止多个线程同时访问这个对象的synchronized方法 ② ...
- emacs 下 common lisp 配置
安装 sbcl .emacs 加入 ;for lisp mode (add-to-list 'load-path "D:/kuaipan/.emacs.d/elpa/slime-201311 ...
- 同一页面引入多个JS文件的编码问题
原来只是觉得IE解析HTML文件的时候,需要知道其传输编码,才能正确处理,而从来没有在意过JavaScript文件的编码问题.结果今天发现同一页面中的多个JavaScript文件如果保存编码不同,也会 ...
- centos 7 -- Disk Requirements: At least 134MB more space needed on the / filesystem.
用了幾年的centos7,今天執行yum update時,彈出一行有錯誤的提示:Disk Requirements: At least 134MB more space needed on the ...