#1存储过程
create procedure greeting()
BEGIN
# 77 = 16 FOR username + 60 for hostname + 1 for '@'
DECLARE user CHAR(77) CHARACTER SET utf8;
SET user = (SELECT CURRENT_USER());
IF INSTER(user, '@') > 0 THEN
SET user = SUBSTRING_INDEX(user, '@',1);
END IF;
IF user = '' THEN
SET = 'earthling';
END IF;
SELECT CONCAT('Greetings,', user, '!') AS greetig;
END;

#时间存储函数
delimiter $$
CREATE PROCEDURE show_time3()
BEGIN
SELECT 'Local time is :', CURRENT_TIMESTAMP;
SELECT 'UTC time is :' , UTC_TIMESTAMP;
END $$
DELIMITER ;

delimiter EOF
CREATE PROCEDURE show_time3()
SELECT 'Local time is:', CURRENT_TIMESTAMP;
SELECT 'UTC time is:', UTC_TIMESTAMP;
END EOF
DELIMITER ;

#2存储函数

DELIMITER $
CREATE FUNCTION show_id_ord(id INT)
RETURNS INT
READS SQL DATA
BEGIN
RETURN (SELECT count(*) FROM test where id = id)
END$
DELIMITER ;

delimiter $
CREATE PROCEDURE update_test_test_id(p_id INT, p_date INT)
BEGIN
update test set test_id = p_date where id = p_id;
END$
delimiter ;

DELIMITER $
CREATE PROCEDURE select_test_id (OUT p_id int)
BEGIN
SELECT COUNT(*) FROM test where id = p_id INTO p_id;
END $
DELIMITER ;

DROP TABLE IF EXISTS `user_info`;
CREATE TABLE `user_info` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`user_name` varchar(50) NOT NULL DEFAULT '' COMMENT '用户名称',
`gender` tinyint(1) NOT NULL DEFAULT '0' COMMENT '用户性别;1:男,2:女',
`add_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '用户注册时间',
`update_timne` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '用户最后更新时间',
PRIMARY KEY (`id`) USING BTREE,
KEY `user_name` (`user_name`),
KEY `gender` (`gender`),
KEY `add_time` (`add_time`)
) ENGINE=MyISAM AUTO_INCREMENT=10 DEFAULT CHARSET=utf8 COMMENT='用户信息表'

#3触发器

delimiter $
CREATE TRIGGER ai_t AFTER INSERT ON user_info
FOR EACH ROW BEGIN
INSTER INTO test(`test_id`) values((SELECT test_id FROM test_id order by id desc limit 1 )+1)
END $
DELIMITER ;

delimiter $
CREATE TRIGGER bi_t BEFORE INSERT ON t
FOR EACH ROW BEGIN
SET new.dt = CURRENT_TIMESTAMP;
IF NEW.parent <0 THEN
SET new.parent = 0;
ELSEIF new.parent >100 THEN
SET new.parent = 100;
END IF;
END$
DELIMITER ;

#4创建事件

CREATE EVENT id_defined_min
ON SCHEDULE EVERY 0.02 HOUR
DO
DELETE FROM test where id <9 ;

Mysql 存储程序的更多相关文章

  1. 实战mysql存储程序与定时器

    home198979 实战mysql存储程序与定时器 博客分类: mysql 存储过程定时器eventprocedure实战  需求:一个庞大的日志表,现每天做定时统计一天的总数,放另一个表中,方便查 ...

  2. 数据库之mysql存储程序

    什么时候会用到存储过程 1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般 SQL 语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度2.当对数据库进行复杂操作时 ...

  3. mysql存储程序

    什么时候会用到存储过程 1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般 SQL 语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度2.当对数据库进行复杂操作时 ...

  4. 《MySQL 存储过程编程》-读书笔记

    本书结构: 第一部分:存储编程基础 第1章:存储过程程序基础 第2章:MySQL存储编程指南 第3章:语言基础 第4章:语句块 第5章:在存储程序中使用SQL 第一章:MySQL存储程序介绍 存储程序 ...

  5. mysql存储过程详细讲解及完整实例下载

    一.存储过程概念 1.存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集.经编译后存储在数据库 中. 2.存储过程是数据库中的一个重要对象,用户通过指定存储过程的名字并给 ...

  6. MySQL高级查询与编程笔记 • 【第4章 MySQL编程】

    全部章节   >>>> 本章目录 4.1 用户自定义变量 4.1.1 用户会话变量 4.1.2 用户会话变量赋值 4.1.3 重置命令结束标记 4.1.4 实践练习 4.2 存 ...

  7. 存储程序(2)——MYSQL

    1.触发器 触发器是与特定数据表相关联的存储过程,当相应的数据表被INSERT.DELETE或UPDATE语句修改时,触发器将自动执行.触发器可以被设置成在这几种语句处理每个数据行之前或之后触发.触发 ...

  8. 存储程序(1)——MYSQL

    MySQL支持把几种对象存放在服务器端供以后使用.这几种对象有一些可以根据情况通过程序代码调用,有一些会在数据表被修改时自动执行,还有一些可以在预定时刻自动执行.它们包括以下几种: 1.存储函数(st ...

  9. 阅读MySQL文档第20章:存储程序和函数

    本文把阅读到的重点摘抄下来. 一.一个子程序要么是一个程序要么是一个函数.使用CALL语句来调用程序,程序只能用输出变量传回值.就像别其它函数调用一样,函数可以被从语句外调用(即通过引用函数名),函数 ...

随机推荐

  1. Debian中编译内核

    转载: http://blog.163.com/libo_5/blog/static/156968520101016102051580/ http://hi.baidu.com/wg_wang/ite ...

  2. 常见hash算法的原理

    散列表,它是基于快速存取的角度设计的,也是一种典型的“空间换时间”的做法.顾名思义,该数据结构可以理解为一个线性表,但是其中的元素不是紧密排列的,而是可能存在空隙. 散列表(Hash table,也叫 ...

  3. LeetCode22 Generate Parentheses

    题意: iven n pairs of parentheses, write a function to generate all combinations of well-formed parent ...

  4. WPF 路由事件

    最近想封装一个关于手势的控件,但是由其他的控件覆盖之后发现不能触发,据说是有一些事件在定义的时候就处理过e.Handle了. 定义的时候就处理了,就是为了控件能够正常的工作,别如Button.Mous ...

  5. Java SE ---流程控制语句

     java的控制流程有三种: 一,顺序流程             自上而下,按照代码的先后顺序执行 二,分支流程             1,if/else语句             2,swit ...

  6. 【HTML5 2】《html5 开发精要与实例讲解》 step1 -- 导读

    一.教程重点:以 综合性案例 为导向,辅之以 精要知识点 二.内容概况: 第1部分:通过 大小型案例 对 各重要知识点 进行详细讲解 第2部分:jWebSocket.RGraph.WebGL 三个重要 ...

  7. Hadoop学习笔记(3)——分布式环境搭建

    Hadoop学习笔记(3) ——分布式环境搭建 前面,我们已经在单机上把Hadoop运行起来了,但我们知道Hadoop支持分布式的,而它的优点就是在分布上突出的,所以我们得搭个环境模拟一下. 在这里, ...

  8. sql语句大全~·留着有用

    一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备 ...

  9. Linux公社资料库地址

    免费下载地址在 http://linux.linuxidc.com/用户名与密码都是http://www.linuxidc.com

  10. c# 生成项目或重新生成项目时报“Project not selected to build for this solution configuration”之解决办法

    菜单->生成->配置管理器->给要生成的项目打钩