mysql函数查看

mysql函数查看,第1张

查询数据库中的存储过程和函数

select `name` from mysql.proc where db = 'xx' and `type` = 'PROCEDURE' //存储过程

select `name` from mysql.proc where db = 'xx' and `type` = 'FUNCTION' //函数

show procedure status//存储过程

show function status//函数

查看存储过程或函数的创建代码

show create procedure proc_name

show create function func_name

查看视图

SELECT * from information_schema.VIEWS //视图

SELECT * from information_schema.TABLES //表

查看触发器

SHOW TRIGGERS [FROM db_name] [LIKE expr]

SELECT * FROM triggers T WHERE trigger_name=”mytrigger” \G

MySQL数据库中year()函数是求某个特定日期中的年份,代码如下:

select '2015-08-11' as date,year('2015-08-11') as year

确定一个日期是一年中的第几个季度,可以用QUARTER()函数实现,代码如下:

SELECT '2015-08-11' AS DATE,QUARTER('2015-08-11') AS QUARTER

返回一个日期是一年中的月份,利用month()函数实现,代码如下:

SELECT '2015-08-11' AS DATE,MONTH('2015-08-11') AS MONTH

获取一个确定日期是一个月份中的多少号,可以用day()函数求得,具体实现代码如下:

SELECT '2015-08-11' AS DATE,DAY('2015-08-11') AS DAY

有时日期中带有时间,而如何获取小时数,这可以利用自带的函数hour()实现,代码如下:

SELECT '2015-08-11 12:20:45' AS DATE,HOUR('2015-08-11 12:20:45') AS HOUR

求取日期时间中的分钟数,可以利用MINUTE()函数实现,代码如下:

SELECT '2015-08-11 12:20:45' AS DATE,MINUTE('2015-08-11 12:20:45') AS MINUTE

最后,获取时间中的秒数,利用SECOND()函数实现,代码如下:

SELECT '2015-08-11 12:20:45' AS DATE,SECOND('2015-08-11 12:20:45') AS SECOND

应用

MySQL

时,会遇到不能创建函数的情况。出现如下错误信息:

复制代码

代码如下:

ERROR

1418

:

This

function

has

none

of

DETERMINISTIC,

NO

SQL,

or

READS

SQL

DATA

in

its

declaration

and

binary

logging

is

enabled

(you

*might*

want

to

use

the

less

safe

log_bin_trust_function_creators

variable)

那是因为没有将功能开启。

开启MySQL函数功能:

复制代码

代码如下:

SET

GLOBAL

log_bin_trust_function_creators=1

关闭MySQL函数功能:

复制代码

代码如下:

SET

GLOBAL

log_bin_trust_function_creators=0

查看状态:

复制代码

代码如下:

show

variables

like

'%func%'


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8689295.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存