mysq进阶

学习资料:

官方文档:http://dev.mysql.com/doc/refman/5.0/en/tutorial.html

1.存储过程:

优点:业务逻辑封装在存储过程中,容易维护,执行效率也高。

缺点:不同的数据库功能函数等不一样,移植的时候需要改动。

create procedure 存储过程名字()
(
   [in|out|inout] 参数 datatype
)
begin
   MySQL 语句;
end;

栗子:

DELIMITER//
create procedure pr_add
(a int,b int
)
begindeclare c int; //后加DEFAULT赋默认值,SET 赋值,存储过程的参数不能指定默认值if a is null thenset a = 0;end if;if b is null thenset b = 0;end if;set c = a + b;select c as sum;
END//

注意:与sqlserver不同的是,没有加DELIMITER// 和 END//无法执行

调用存储过程:

call pr_add(10, 20);

或者

set @a = 10;
set @b = 20;

call pr_add(@a, @b);

关键字:

IF THEN、ELSEIF、ELSE、END IF

name:LOOP 、END LOOP name

WHILE DO、END WHILE

REPEAT、UNTILL ... END REPEAT

2.自定义函数

mysql>DEMILITER $$

 3.

自定义触发器:当一阵表插入数据时,另一张表同步更新,并且自增id。

DROP TRIGGER IF EXISTS t_afterinsert_on_kd_files;
CREATE TRIGGER t_afterinsert_on_kd_files
AFTER INSERT ON kd_files
FOR EACH ROW
BEGIN
if new.in_recycle=0 then
SET @VAR= (select max(id)+1 from kd_files_es)+1;
#insert into kd_files_es_test(file_id,uid,file_name,file_ext,kf_id,file_size,mtime) select new.file_id,new.uid,new.file_name,new.file_ext,new.kf_id,new.file_size,new.mtime FROM kd_files LIMIT 1;
INSERT into kd_files_es set id=@VAR,file_id=new.file_id,uid=new.uid,file_name=new.file_name,file_ext=new.file_ext,kf_id=new.kf_id,file_size=new.file_size,mtime=new.mtime,tag=1;
end IF;
END;

转载于:https://www.cnblogs.com/flyingbee6/p/5248494.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/261832.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTML使用vue的 event,vue-js 特殊变量$event常识

背景如果我们要阻止默认事件,在 chrome 等浏览器中,我们可能要写一个:event.preventDefault();而在 IE 中,我们则需要写:event.returnValue false;jquery ,跨浏览器的实现,我们统一只需要写&am…

创建非矩形的Windows 窗体

创建非矩形窗体的过程包含三个步骤:• 创建一个作为窗体图面的位图。(一种有效的方式是,您可以从矩形中“裁剪掉”所需的窗体形状。)• 创建Windows 应用程序项目,将其属性设置为移除标题栏并使用位图作为窗体背景。•…

ExtJs6 Desktop Demo 修改测试

一直用Extjs4, extjs6 的变化较大,这几天有兴趣研究一下,把自带的Demo的desktop做了些修改, 1.首先下载安装sencha cmd 2.然后 需要生成新项目 用sencha cmd 命令如下: sencha -sdk E:\ext-6.0.0 generate app linb…

包含html语言的超链接标记的网页_零基础入门 HTML 的 8 分钟极简教程

在今天,前端工程师已经成为研发体系中的重要岗位之一。可是与此相对的是,极少大学的计算机专业愿意开设前端课程,大部分前端工程师的知识,也都是在实践和工作中不断学习的。最近收到很多同学的后台留言,说希望多推出一…

mongodb模糊查询_AWS 回击了!推出兼容 MongoDB 的 DocumentDB

2018 年 10 月,MongoDB 将其开源许可证从 GNU AGPLv3 切换到 Server Side Public License(SSPL),并明确指出之所以会更改开源协议是因为部分云计算公司在使用 MongoDB 的时候没有遵循其开源协议。2019 年 1 月 9 日,AWS 宣布推出 Amazon Docu…

琴岛学院计算机应用技术,我院计算机工程系成功晋级“中国高校计算机大赛-网络技术挑战赛”全国总决赛...

2017年7月22日,由教育部高等学校计算机类专业教学指导委员会、教育部高等学校软件工程专业教学指导委员会、教育部高等学校大学计算机课程教学指导委员会和全国高等学校计算机教育研究会联合主办的“中国高校计算机大赛”首届网络技术挑战赛于济南大学举办。青岛理工…

Android L 的 Tint(着色)

Tint 是什么? Tint 翻译为着色。 着色,着什么色呢,和背景有关?当然是着背景的色。当我们开发 App 的时候,如果使用了 Theme.AppCompat 主题的时候,会发现 ActionBar 或者 Toolbar 及相应的控件的颜色会相应…

《从零开始学Swift》学习笔记(Day 66)——Cocoa Touch设计模式及应用之通知机制...

原创文章,欢迎转载。转载请注明:关东升的博客 通知(Notification)机制是基于观察者(Observer)模式也叫发布/订阅(Publish/Subscribe)模式,是 MVC(模型-视图-控…

JUnit3 一次运行多个测试类和进行多次重复测试:使用测试套件和RepeatedTest

测试套件 如果测试类写到很多,每次要进行测试,难道要重新点击每一个测试类来运行?如果有200个测试类要测试呢? 为了解决这个问题,引入了测试套件(TestSuite)。 通过将多个测试放入套件中&#x…

mysql 不同分区 同时insert_Mysql分区表的原理和优缺点

分区表的原理分区表是由多个相关的底层表实现,这些底层表也是由句柄对象表示,所以我们也可以直接访问各个分区,存储引擎管理分区的各个底层表和管理普通表一样(所有的底层表都必须使用相同的存储引擎),分区表的索引只是在各个底层…

大理三塔,及崇圣寺里的假深沉

大理三塔,及崇圣寺里的假深沉 记得我第一次看见三塔时,是一副破败不堪的景象。而第二次来大理时,因为“崇圣寺”正在修葺,只能远远地眺望一下三塔。那时我对大理失望极了。 现在三塔修缮一新,给人耳目一新的感觉。 三塔…

WCF三种通信模式(转)

一、概述 WCF在通信过程中有三种模式:请求与答复、单向、双工通信。以下我们一一介绍。 二、请求与答复模式 描述: 客户端发送请求,然后一直等待服务端的响应(异步调用除外),期间处于假死状态,直到服务端有了答复后才能…

第一个程序,Hello World

在eclipse里新建一个project,选Android-Android Project 然后Next,继续 解释一下 Package Name:这个学过编程的人都应该熟悉了,类似于namespace,你定义的所有东西都在一个包里不会和别的包出现重命名的问题等等,不多说…

Hadoop2.6集群动态添加和删除数据节点

2019独角兽企业重金招聘Python工程师标准>>> 开始之前,应该把所有新增数据节点上的Hadoop环境都配置好(如果要直接复制已经存在节点的hadoop文件夹,应该删掉里面已经产生的集群数据,比如tmp和data目录,不然…

拉取ftp服务器上的文件_winscp和云服务器,2步实现winscp将文件上传到腾讯云Linux云服务器...

WinSCP是一个Windows环境下使用SSH的开源图形化SFTP客户端。同时支持SCP协议,它的主要功能就是在本地与远程计算机间安全的复制文件。与使用FTP上传代码相比,通过WinSCP可以直接使用服务器账户密码访问云服务器,无需在服务器端做任何配置。II…

笔记:设计模式(3)-Abstract Factory抽象工厂模式

工厂模式的起源 1.变化点在“对象的创建”,因此就封装“对象创建”; 2.面向接口编程,依赖接口,而非依赖实现。 动机(Motivation) 在系统中,经常面临着“一系列相互以来的对象”的创建工作&#…

MongoDB操作:insert()

2019独角兽企业重金招聘Python工程师标准>>> Override public boolean inSert(String dbName, String collectionName, String[] keys,Object[] values) { DB db null; DBCollection dbCollection null; WriteResult result null; String resul…

最近处理的几个小问题_20160311

最近处理的小问题很多,我就拿出来几个,简单和大家说一说。我就分为三个方面,硬件问题,Oracle表空间迁移,MySQL断电恢复首先是硬件问题。如果看到下面的系统日志,就会发现早在2014年就出现了一些警告和问题&…

3. 什么是icmp?icmp与ip的关系_你知道如何跟女生,确定恋人关系吗?

哈喽!同学你好!我是子伯,是一名情感咨询。今天我想给你分享,和女生再暧昧期,如何去确定关系,因为......在我做咨询当中,有很多男生跟女生,不管是在聊天上,还是在线下的交…

量子计算机完整的图片,记者带你走近世界首台超越早期经典计算机的光量子计算机(组图)...

在光学体系方面,研究团队在去年首次实现十光子纠缠操纵的基础上,利用高品质量子点单光子源构建了世界首台超越早期经典计算机的单光子量子计算机。图为基于单光子的量子计算原型机结构。潘建伟教授供图据了解,多粒子纠缠的操纵作为量子计算的…