函数体 函数名,应合法的标识符,不应与系统关键字冲突。
一个函数应该属于某个数据库,可以使用db_name.funciton_name的形式执行当前函数所属数据库,否则为当前数据库。
参数部分,由参数名和参数类型组成。
返回值类类型.注意,一定要有return返回值语句。
创建第一个函数:
mysql>DROP FUNCTION IF EXISTS SP_FUNC_DBDH_ONE -- 删掉已存在函数 DELIMITER &&-- 定义分隔符,必须要有 ,本例为 &&可以为得数字符,例如: $$,%%,**
mysql>CREATE FUNCTION SP_FUNC_DBDH_ONE( PARA_VAR varchar(30)) -- 多个参数用,分割 参数
的类型必须是mysql列存在的类型
->RETURNS VARCHAR(100) -- 指定返回值类型,如果你不确定返回
文本长度,可以使用text
->BEGIN
->DECLARE NAYIBU_FIR VARCHAR(30) DEFAULT 'THIS IS MY FIRST,' -- 定义变量,设置默认值
->SET NAYIBU_FIR = concat(NAYIBU_FIR,PARA_VAR)
->RETURN NAYIBU_FIR-- 返回值
->END $$
后面有你在前面定义的分割符号
Query OK, 0 rows affected (0.00 sec)
mysql>DELIMITER &&
查询数据库中的存储过程和函数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
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)