Navicat 创建mysql存过、定时执行存过

创建存过:

使用Navicat for MySQL工具创建存储过程步骤:

1. 新建函数(选择函数标签 -> 点击新建函数):

2.输入函数的参数个数、参数名、参数类型等:

3.编写存储过程:

代码如下:

Sql代码  

  1. BEGIN
  2. /* 定义变量 */
  3. declare tmp0 VARCHAR(1000);
  4. declare tmp1 VARCHAR(1000);
  5. declare done int default -1;  -- 用于控制循环是否结束
  6. /* 声明游标 */
  7. declare myCursor cursor for select cell_0,cell_1 from t_test;
  8. /* 当游标到达尾部时,mysql自动设置done=1 */
  9. declare continue handler for not found set done=1;
  10. /* 打开游标 */
  11. open myCursor;
  12. /* 循环开始 */
  13. myLoop: LOOP
  14. /* 移动游标并赋值 */
  15. fetch myCursor into tmp0,tmp1;
  16. -- 游标到达尾部,退出循环
  17. if done = 1 then
  18. leave myLoop;
  19. end if;
  20. /* do something */
  21. -- 循环输出信息
  22. select tmp0,tmp1 ;
  23. -- 可以加入insert,update等语句
  24. /* 循环结束 */
  25. end loop myLoop;
  26. /* 关闭游标 */
  27. close myCursor;
  28. END

4.保存(请输入合法名称):

5.运行存储过程(在结果1,2,3...中可以查询输出信息):

设置定时计划执行存储过程

1.事件定义填写

2.事件计划设置

3.保存

点击上方保存即可

常见问题:

navicat for mysql 创建事件的时候,保存时弹出提示“事件计划已关闭。事件只能在服务器启动并开启事件计划时才能处理。

解决方法:

检查一下MYSQL的和系统变量 event_scheduler

show variables like ‘event_scheduler ‘;

从你的描述看来应该是没有打开。 set global event_scheduler=on; 打开这个设置。

打开的event_schedulerSQL:

SET GLOBAL event_scheduler = ON;

SET @@global.event_scheduler = ON;

SET GLOBAL event_scheduler = 1;

SET @@global.event_scheduler = 1

关闭的event_schedulerSQL:

SET GLOBAL event_scheduler = OFF;

SET @@global.event_scheduler = OFF;

SET GLOBAL event_scheduler = 0;

SET @@global.event_scheduler = 0;

原文地址:https://www.cnblogs.com/renshengruxi/p/11097614.html

时间: 2024-11-10 13:10:53

Navicat 创建mysql存过、定时执行存过的相关文章

Mysql数据库每天定时执行备份方法

此数据库备份方法是简单的数据库备份方法,就是从Mysql的数据文件下,将数据库文件拷贝到指定的文件夹目录下 1.创建txt文件,添加脚本 net stop mysql xcopy D:\MySql\Data\*.* D:\MySqlDataBack\%date:~0,10%-data\ /y net start mysql 其中 此脚本是拷贝数据的表文件 net stop mysql:停止mysql服务: xcopy D:\MySql\Data\*.* D:\MySqlDataBack\%dat

C#创建windows服务并定时执行

一.创建window服务 1.新建项目-->选择Windows服务.默认生成文件包括Program.cs,Service1.cs 2.在Service1.cs添加如下代码: System.Timers.Timer timer1;  //计时器 public Service1() { InitializeComponent(); } protected override void OnStart(string[] args)  //服务启动执行 { timer1 = new System.Time

MySQL数据库 Event 定时执行任务

一.背景 由于项目的业务是不断往前跑的,所以难免数据库的表的量会越来越庞大,不断的挤占硬盘空间.即使再大的空间也支撑不起业务的增长,所以定期删除不必要的数据是很有必要的.在我们项目中由于不清理数据,一个表占的空间竟然达到了4G之多.想想有多可怕... 这里介绍的是用MySQL 建立一个定时器Event,定期清除掉之前的不必要事件. 二.内容 #1.建立存储过程供事件调用 delimiter// drop procedure if exists middle_proce// create proc

Navicat for MySQL打开链接时出错错误为:2005 - Unknown MySQL server host 'localhost'(0)?

问题:Navicat for MySQL打开链接时出错错误为:2005 - Unknown MySQL server host 'localhost'(0)? 在使用navicat 连接mysql数据库的时候会出现:mysql error 2005 - Unknown MySQL server host 'localhost'(0)错误:当检查连接信息,连接属性信息,用户名和密码都是正确的,IP地址为:localhost,在有网络的情况下都能正常打开数据库,但是一断网就出错了. 解决方案如下:在

mysql创建定时执行存储过程任务

sql语法很多,是一门完整语言.这里仅仅实现一个功能,不做深入研究. 目标:定时更新表或者清空表. 案例:曾经做过定时清空位置信息表的任务.(然而,当时并未考虑服务器挂掉后的情况) 本次测试:每5s更新表字段+1 1.prepare 创建一个表: DROP TABLE IF EXISTS `test_sche`; CREATE TABLE `test_sche` ( `id` int(11) NOT NULL, `counts` int(11) DEFAULT NULL, PRIMARY KEY

MySQL 数据库 varchar 到底可以存多少个汉字,多少个英文呢?我们来搞搞清楚

一.关于UTF-8 UTF-8 Unicode Transformation Format-8bit.是用以解决国际上字符的一种多字节编码. 它对英文使用8位(即一个字节) ,中文使用24位(三个字节)来编码. UTF-8包含全世界所有国家需要用到的字符,是国际编码,通用性强. UTF-8编码的文字可以在各国支持UTF8字符集额的浏览器上显示.如果是UTF8编码,则在外国人的英文IE也能显示中文,他们无需下载IE的中文语言支持包. 二.关于GBK GBK 是国家标准GB2312基础上扩容后兼容G

MySQL定时执行脚本(计划任务)命令实例

1 在mysql中我们可以直接进行一些参数设置让它成定时为我们执行一些任务了,这个虽然可以使用windows或者linux中的计划任务实现,但是mysql本身也能完成 2 3 查看event是否开启 4 复制代码 代码如下: 5 6 show variables like '%sche%'; 7 将事件计划开启 8 复制代码 代码如下: 9 set global event_scheduler =1; 10 11 12 创建存储过程test 13 14 复制代码 代码如下: 15 16 CREA

Navicat for MySQL界面下如何用SQL语句创建表?

Navicat for MySQL界面下如何用SQL语句创建表?下面小编就告诉你.首先打开 Navicat,选择一个数据库,点击"查询",在右侧点击"创建查询",输入SQL语句,点击"执行"就可以了,示例SQL: CREATE TABLE `test`.`users` ( `id` int(10) NOT NULL AUTO_INCREMENT, `name` varchar(20) DEFAULT NULL, `age` int(10) DEF

Windows Server 2012和2008中使用计划任务定时执行BAT批处理文件 定时备份mysql数据

MySQL 安装位置:D:\Program Files\MySQL\MySQL Server 5.0\data 如图: 数据库名称为:952game数据库备份目的地:d:\db_bak\ (你想把数据库备份到哪个盘的路径)我想备到D盘的db-bak目录下面============================新建db_bak.bat,写入以下代码 我的数据库地址 我备份的文件地址:  我的db-bak.dat 文件 net stop mysqlxcopy "E:\Server\mysql\My