• mysql中创建函数


    一、查看创建函数的功能是否开启: 
    mysql> show variables like '%func%'; 
    +-----------------------------------------+-------+ 
    | Variable_name                            | Value | 
    +-----------------------------------------+-------+ 
    | log_bin_trust_function_creators | ON    | 
    +-----------------------------------------+-------+ 
    1 row in set (0.02 sec)

    二、如果Value处值为OFF,则需将其开启。 
    mysql> set global log_bin_trust_function_creators=1; 
    三、创建函数时,先选择数据库, 
    mysql> use xxx; 
    Database changed 
    delimiter $$是设置 $$为命令终止符号,代替分号,因为分号在begin...end中会用到; 
    mysql> delimiter $$ 
    CREATE FUNCTION first_func(param1 varchar(5),parmam2 varchar(5),param3 varchar(10)) 
    RETURNS TINYINT 
    BEGIN 
       RETURN 1; 
    END 
    函数创建成功后需恢复分号为命令终止符号。 
    mysql> delimiter ; 
    四、测试: 
    mysql> select first_func('aaa','bbb','ccc'); 
    +-------------------------------+ 
    | first_func('aaa','bbb','ccc') | 
    +-------------------------------+ 
    |                             1 | 
    +-------------------------------+ 
    1 row in set (0.47 sec) 
    五、删除函数: 
    mysql> drop function first_func ; 
    Query OK, 0 rows affected (0.11 sec) 
    六、查看函数 
    1) show function status 
    显示数据库中所有函数的基本信息  
    2)查看某个具体函数 

     mysql>show create function function;

    以上出自:http://blog.csdn.net/tfhui928/article/details/6058074

    举例:

    --查看创建函数功能是否开启
    SHOW VARIABLES LIKE '%func%';

    --开启创建函数功能,将variable_name设置为1
    SET GLOBAL log_bin_trust_function_creators=1;

    --查看数据库中所有函数
    SHOW FUNCTION STATUS;

    --查看具体的函数
    SHOW CREATE FUNCTION test_func

    --删除函数
    DROP FUNCTION test_func

    --创建查询函数
    DELIMITER $$
    CREATE FUNCTION test_func(param1 VARCHAR(20),param2 INT,param3 CHAR(5))
    RETURNS  INT
    BEGIN
        DECLARE ret_val INT;--定义变量
        SELECT MAX(id) INTO ret_val FROM test;
     RETURN ret_val;
     
    END

    --执行函数
    SELECT test_func('var',45,'char');

    --创建赋值函数
    DELIMITER $$
    CREATE FUNCTION test_func1(param1 INT,param2 VARCHAR(20))
    RETURNS INT
    BEGIN
        DECLARE return_val INT;
        DECLARE val INT DEFAULT 2;
        IF val>1 THEN
            SET return_val = val;
        ELSE
            SET return_val = 1;
        END IF;
     RETURN return_val;
    END

    --执行函数
    SELECT test_func1(1,'admin');

    转自:http://my.oschina.net/u/1273696/blog/181995

  • 相关阅读:
    free解释
    无损 JBIG2 编码库(Lossless JBIG2 Encoder)
    PDF补丁丁暂停更新
    PDF补丁丁将字符识别结果写入PDF文件功能即将完成
    PDF补丁丁0.3.3版:字符识别结果写入PDF文件功能邀请测试
    PDF补丁丁 0.3.3.58版修复打开、输出超大型PDF文件问题
    PDF补丁丁0.3.3版即将发布
    PDF补丁丁0.3.3.12 新增查看PDF文件隐藏对象及导出流对象功能
    PDF 补丁丁 0.3.3 正式版发布
    PDF 补丁丁0.3.3.20版新增JBIG2压缩功能,可为扫描PDF瘦身
  • 原文地址:https://www.cnblogs.com/-lpf/p/4344517.html
Copyright © 2020-2023  润新知