自定义函数和事件是mysql一个很方便的功能,navicat在5.1以上版本就支持了自定义函数和事件,phpmyadmim不清楚。

用这个是由于一些简单的事情,没有必要去做一个服务器计划使用

接下来我们来做一个简单用户签到的功能


用户签到功能 每天需要更新用户的签到状态我们这里的status就是签到状态 0-未签到 1-已签到

使用mysql的自定义函数和事件让他自动去执行,这样我们在程序中就不用去做对比了

首先我们建库建表

一. navicat 怎么进行操作

1.

在完成这些操作以后,我们还需要查看数据库是否支持事件

在sql命令行中运行这句话

如果设置中为off或者1

执行下面这句

把他修改为on或者1

这一步是必须的,不然在创建事件的时候会报错

2在user库中我们看到函数和事件

3.点击函数后选择新建函数

4.选择过程,直接点击完成

5.然后在其中写需要执行的操作

6.

Navicat 函数高级属性

6.1:安全性:指定用创建函数的用户权限来运行函数,或是用启用它的用户权限来运行。

定义者:默认定义者值是运行 CREATE PROCEDURE 或 CREATE FUNCTION 语句的的用户,和 DEFINER = CURRENT_USER 相同。如果给予一个用户值,它应该是一个 'user_name'@'host_name' 格式的 MySQL 帐号(使 用在 GRANT 语句相同的格式),user_name 及 host_name 值都是必须的。

6.2:数据访问:提供一些特性信息关于函数使用的数据性质。

 ● Contains SQL:表示函数不包含读或写数据的语句。如果没有明确给予特性,这是默认的。

 ● No SQL:表示函数不包含 SQL 语句。

 ● Reads SQL Data:表示函数包含读数据的语句,但不包含写数据的语句。

 ● Modifies SQL Data:表示函数包含写数据的语句。

6.3:决定性:如果函数或过程总是对同样的输入参数生成同样的结果,则被认为它是决定性,否则就是非决定性。

7.然后直接点击保存就可以了,我们这里把他保存为user_sign,然后点击事件,找到新建事件这两步操作和自定义函数是相同的,不会对比图7.图8

8.然后在定义中执行,我们创建的自定义函数user_sign

9.  参数阐述

定义者:指定当在事件运行时检查访问权限要使用的用户帐号。默认定义者值是运行 CREATE EVENT 语句的的用户。(和DEFINER = CURRENT_USER 相同。)如果给予一个用户值,它应该是一个 'user_name'@'host_name' 格式的MySQL 帐号(使用与 GRANT 语句相同的格式)。user_name 及 host_name 值都是必须的。

状态:可以创建一个事件但可以用 DISABLE 关键字保持不激活。或者可以用 ENABLE 默认状态,这是激活

ON COMPLETION:正常情况下,一旦事件已过期,它将立即删除。可以通过指定 ON COMPLETION PRESERVE 来重写此性能。ON COMPLETION NOT PRESERVE 只是使默认非持久性的性能明确。

10.上面的定义者不用设置,会默认加载上去,如果你需要设定用用户在填写,然后我们点击

计划中的参数说明:

AT:包含日期和时间,或必须是一个解析为 datetime 值的表达式。使用+INTERVAL 来创建一个事件,它发生在与当前日期和时间有关的将来某个时刻。

EVERY:在定期间隔重复的行动,可以在 EVERY 子句之后加 interval。(+INTERVAL 与 EVERY 不能同时使用。)

STARTS:EVERY 子句还可能包含一个非必须的 STARTS 子句。STARTS 之后的 timestamp 值表示行动应该何时开始重复,也可以用+INTERVAL 间隔指定「由现在开始」的时间量。

ENDS:EVERY 子句还可包含一个非必须的 ENDS 子句。ENDS 关键字之后的 timestamp 值告诉 MySQL 何时停止重复事件。也可以用+INTERVAL 间隔与 ENDS 一起。

备注:timestamp 是必须发生在未来不能安排在过去的一个事件。

我们这里设置的事每隔1分钟执行一次,在2017-04-07 14:54:00开始执行,没有设置结束时间那这个时间就不会销毁,会一直执行下去

参照上面所说肯定成功,不成功你找我

二:phpmyadmin

这个就简单说一下

phpmyadmin中设定自定义函数是打开库以后,点击上方的功能栏,点击程序进行设置,很简单

在函数设置好后,上方功能栏有一个事件点击就好了,但是也要开启事件,这个就简单多了,你可以看到开启时间的按钮,直接点击就好了

开启后直接添加事件就可以了,可以很直观的看清你所要进行的操作

这就是使用数据库管理工具来设定自定函数和事件 完成一些简单的日常更新状态

  

navicat与phpmyadmin做mysql的自定义函数和事件的更多相关文章

  1. Mysql - 存储过程/自定义函数

    在数据库操作中, 尤其是碰到一些复杂一些的系统, 不可避免的, 会用到函数/自定义函数, 或者存储过程. 实际项目中, 自定义函数和存储过程是越少越好, 因为这个东西多了, 也是一个非常难以维护的地方 ...

  2. mysql创建自定义函数与存储过程

    mysql创建自定义函数与存储过程 一 创建自定义函数 在使用mysql的过程中,mysql自带的函数可能不能完成我们的业务需求,这时就需要自定义函数,例如笔者在开发过程中遇到下面这个问题 mysql ...

  3. MySQL(六) —— 自定义函数

    自定义函数 用户自定义函数(user-defined function, UDF)是一种对MySQL扩展的途径,其用法与内置函数相同. 参数,返回值 创建自定义函数 CREATE FUNCTION f ...

  4. MySQL之自定义函数

    引言 MySQL本身提供了内置函数,这些函数的存在给我们日常的开发和数据操作带来了很大的便利,比如我前面提到过的聚合函数SUM().AVG()以及日期时间函数等等,可是我们总会出现其他的需求:我们需要 ...

  5. MySQL 创建自定义函数

    语法:Create function function_name(参数列表)returns返回值类型 函数体 函数名,应合法的标识符,不应与系统关键字冲突. 一个函数应该属于某个数据库,可以使用db_ ...

  6. mysql增加自定义函数功能

    mysql默认是不能自定义函数的 当create function时 This function has none of DETERMINISTIC, NO SQL, or READS SQL DAT ...

  7. MySQL 创建自定义函数(1)

    1. 创建测试自定义函数(1) CREATE DEFINER=`dbdh`@`localhost` FUNCTION `test`.`sp_function_dbdh_three`() RETURNS ...

  8. MySQL之自定义函数实例讲解

    转自:https://www.2cto.com/database/201804/740205.html MySQL中已经有很多函数,如时间函数等,但是有时这些函数不能满足自己的设计需求,此时需要自定义 ...

  9. Jpa 重写方言dialect 使用oracle / mysql 数据库自定义函数

    在使用criteria api进行查询时 criteriaBuilder只提供了一个部分标准的sql函数,但当我们需要使用oracle特有的行转列函数wm_concat或 mysql特有的行转列函数g ...

随机推荐

  1. MSSQL数据批量插入优化详细

    序言 现在有一个需求是将10w条数据插入到MSSQL数据库中,表结构如下,你会怎么做,你感觉插入10W条数据插入到MSSQL如下的表中需要多久呢? 或者你的批量数据是如何插入的呢?我今天就此问题做个探 ...

  2. 自己写的python脚本(抄的别人的,自己改了改,用于整理大量txt数据并插入到数据库)

    昨天,遇到了一个问题,有100w条弱口令数据,需要插入到数据库中,而且保存格式为txt. 身为程序员不可能一条一条的去写sql语句吧(主要是工作量太大,我也懒得干).所以,我 就百度了一下,看有没有相 ...

  3. .Net异步编程知多少

    1. 引言 最近在学习Abp框架,发现Abp框架的很多Api都提供了同步异步两种写法.异步编程说起来,大家可能都会说异步编程性能好.但好在哪里,引入了什么问题,以及如何使用,想必也未必能答的上来. 自 ...

  4. Java实现OOP(面向对象编程)

    一.对象的综述 面向对象编程(OOP)具有多方面的吸引力.对管理人员,它实现了更快和更廉价的开发与维护过程.对分析与设计人员,建模处理变得更加简单,能生成清晰.易于维护的设计方案.对程序员,对象模型显 ...

  5. Ubuntu下安装Redis并实现远程访问

    之前的一篇随笔写到Redis在Windows下的安装,但目前好多大数据处理的服务是在Linux上的,所以想以Redis为例并实现在Windows上利用C#代码远程访问. 以在Ubuntu下为例,步骤如 ...

  6. web微信开发前期准备最新详细流程

    一.申请配置测试公众号与配置本地服务器   1.打开浏览器,输入:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login,微信扫码确 ...

  7. 未来工厂——电器行业ERP案例

    江苏科兴电器有限公司位于全国著名的“银杏之乡”泰兴市南首,主要生产35kV及以下电流.电压互感器等系列产品.产品多次经国家及省市技术监督部门抽检合格,广泛应用于国家重点工程.“COSINE”商标荣获泰 ...

  8. Oracle 一些简单操作

    登录oracle 以root用户切换到oracle数据库用户:su - oracle 输入sqlplus /nolog 不连接任何数据库 conn /as sysdba 用sysdba登录 start ...

  9. SQLSERVER2008 错误18456

    我遇到的问题,已经解决,如果你遇到不能解决可以咨询我 1.以windows验证模式进入数据库管理器. 第二步:右击sa,选择属性: 在常规选项卡中,重新填写密码和确认密码(改成个好记的).把强制实施密 ...

  10. Windows定时计划执行Python

    先看下定时执行的py文件 #coding:gbk from selenium import webdriver import time,os driver = webdriver.PhantomJS( ...