mysql udf函数怎么调用

网上有关“mysql udf函数怎么调用”话题很是火热,小编也是针对mysql udf函数怎么调用寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。

背景

在上一篇推文中,我们介绍了 MySQL Group Replication 8.0.16 支持信息碎片化功能来增强大型事务处理能力。

如果您想在组复制中使用该功能,则任何组成员的版本都不能低于 8.0.16!

简单地说就是由于低版本协议上不支持。MySQL 8.0.16 的组通讯开始支持新协议,简称“分段协议”,之前的版本中只有一种“压缩协议”。

如果多个成员想加入复制组,那么在协议匹配上遵循以下原则:

现有复制组成员和新加入成员版本相同,加入成功。

低版本成员想加入高版本的组会被驱逐,加入失败。

高版本的成员想加入低版本的组,单独加入成功,多个加入失败。

例如:

一个 MySQL Server 8.0.16 实例可以成功加入使用通信协议版本 5.7.24 的组。

一个 MySQL Server 5.7.24 实例无法成功加入使用通信协议版本 8.0.16 的组。

两个 MySQL Server 8.0.16 实例无法同时加入使用通信协议版本 5.7.24 的组。

两个 MySQL Server 8.0.16 实例可以同时加入使用通信协议版本 8.0.16 的组。

新增 UDF

为了能让高版本的复制组更便于加入低版本的成员,MySQL 8.0.16 新增两个 UDF。

您可以使用两个新的 UDF 命令去管理组通信协议:

1. group_replication_set_communication_protocol(new_protocol)

设置组复制通讯协议版本

SELECT group_replication_set_communication_protocol("8.0.15");

填入一个所有成员都支持的版本号,即:new_protocol ≤ 所有成员的 MySQL版本。

new_protocol 格式:major.minor.patch (主版本号.次版本号.发布版本号)例如:8.0.15。

2. group_replication_get_communication_protocol()

获取复制中最旧成员的 MySQL 版本号

SELECT group_replication_get_communication_protocol(); +------------------------------------------------+ | group_replication_get_communication_protocol() | +------------------------------------------------+ | 5.7.14 | +------------------------------------------------+

获取的版本号可能与设置的值不一致,但不一致的版本之间组复制协议是一样的。

返回结果格式:major.minor.patch (主版本号.次版本号.发布版本号)例如:8.0.15。

以上两个 UDF 对全部组成员有效,主机或从机上均可执行。

结论

若想使用信息碎片功能。建议将组复制成员全部升级为 8.0.16。

若组内成员版本仅有部分为 8.0.16,可以用两个新的函数来让高版本的成员保持与其它成员组协议一致。

请点击输入描述

CREATE?FUNCTION?`fristPinyin`(P_NAME?VARCHAR(255))?RETURNS?varchar(255)?CHARSET?utf8

BEGIN

DECLARE?V_RETURN?VARCHAR(255);

SET?V_RETURN?=?ELT(INTERVAL(CONV(HEX(left(CONVERT(P_NAME?USING?gbk),1)),16,10),?

0xB0A1,0xB0C5,0xB2C1,0xB4EE,0xB6EA,0xB7A2,0xB8C1,0xB9FE,0xBBF7,?

0xBFA6,0xC0AC,0xC2E8,0xC4C3,0xC5B6,0xC5BE,0xC6DA,0xC8BB,

0xC8F6,0xCBFA,0xCDDA,0xCEF4,0xD1B9,0xD4D1),

'A','B','C','D','E','F','G','H','J','K','L','M','N','O','P','Q','R','S','T','W','X','Y','Z');

RETURN?V_RETURN;

END

pinyin?:此函数是将一个中文字符串对应拼音母的每个相连?(例如:"中国人"->ZGR)

复制代码?代码如下:

CREATE?FUNCTION?`pinyin`(P_NAME?VARCHAR(255))?RETURNS?varchar(255)?CHARSET?utf8

BEGIN

DECLARE?V_COMPARE?VARCHAR(255);

DECLARE?V_RETURN?VARCHAR(255);

DECLARE?I?INT;

SET?I?=?1;

SET?V_RETURN?=?'';

while?I?<?LENGTH(P_NAME)?do

SET?V_COMPARE?=?SUBSTR(P_NAME,?I,?1);

IF?(V_COMPARE?!=?'')?THEN

#SET?V_RETURN?=?CONCAT(V_RETURN,?',',?V_COMPARE);

SET?V_RETURN?=?CONCAT(V_RETURN,?fristPinyin(V_COMPARE));

#SET?V_RETURN?=?fristPinyin(V_COMPARE);

END?IF;

SET?I?=?I?+?1;

end?while;

IF?(ISNULL(V_RETURN)?or?V_RETURN?=?'')?THEN

SET?V_RETURN?=?P_NAME;

END?IF;

RETURN?V_RETURN;

END

示例:

复制代码?代码如下:

mysql>?select?p.province,?fristPinyin(p.province),?pinyin(p.province)?from?province?p;

+------------------+-------------------------+--------------------+

|?province?|?fristPinyin(p.province)?|?pinyin(p.province)?|

+------------------+-------------------------+--------------------+

|?北京市|?B|?BJS|

|?天津市|?T|?TJS|

|?河北省|?H|?HBS|

|?山西省|?S|?SXS|

|?内蒙古自治区?|?N|?NMGZZQ?|

+------------------+-------------------------+--------------------+

5?rows?in?set

关于“mysql udf函数怎么调用”这个话题的介绍,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!

本文来自作者[东郭光正]投稿,不代表臻昂号立场,如若转载,请注明出处:https://anzhentang.com/angzhen/395.html

(46)

文章推荐

  • 资生堂新透白精华液50ml多少钱

    资生堂新透白精华液在市场上面的价格在800多元,我们也可以了解到这款产品的作用是非常大的,采用从樱花当中提炼出来的成分,能够有效美白肌肤,另外还融合了先进的科技,可以从源头打开肌肤的光通道,所以对于美白肌肤方面的效果更加明显,坚持使用之后,能够让肌肤变得更加细腻白嫩,如同婴儿一般。如今我们也可以发现

    2025年09月09日
    56
  • 衣服的英文怎么说?

    衣服的英文单词为:Clothes下面简单对单词讲解一下:Clothes(词组翻译):衣服形式变化:复数形式:clothes短语搭配:Wearclothes:穿衣服Cleanclothes:干净的衣服Fashionableclothes:时尚的衣服Dirtyclothes:脏衣服

    2025年09月18日
    64
  • 韩式烧烤炉哪个牌子好 韩式烧烤炉选购技巧

    随着生活水平的不断提高,现在很多的人都很喜欢在闲暇的时间进行娱乐活动。烧烤也是人们在休闲时间的娱乐方式之一。很多的朋友都很喜欢烧烤,在周末的时候约上几个好朋友出去烧烤确实是一件很不错的事儿。烧烤的话就一定要使用到烧烤炉,烧烤炉的种类也是多种多样的,今天小编要介绍的是韩式烧烤炉,接下来我们一起来了解一

    2025年09月19日
    54
  • 教程分享“手机十三道怎么能拿到好牌”附开挂脚本详细步骤

    无需打开直接搜索微信:本司针对手游进行,选择我们的四大理由:1、软件助手是一款功能更加强大的软件!无需打开直接搜索微信:2、自动连接,用户只要开启软件,就会全程后台自动连接程序,无需用户时时盯着软件。3、安全保障,使用这款软件的用户可以非常安心,绝对没有被封的危险存在。

    2025年09月22日
    55
  • 实测分析“微信跑得快免费开挂神器”附开挂脚本详细步骤

    >亲,微信跑得快免费开挂神器这款游戏原来确实可以开挂,详细开挂教程1、起手看牌2、随意选牌3、控制牌型4、注明,就是全场,公司软件防封号、防检测、 正版软件、非诚勿扰。2022首推。全网独家,诚信可靠,无效果全额退款,本司推出的多功能作 弊辅助软件。

    2025年09月22日
    44
  • ghs是什么意思?

    网上有关“ghs是什么意思?”话题很是火热,小编也是针对ghs是什么意思?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。“ghs”的意思是首拼音缩写,G代表搞,H代表黄,S代表一种颜色,连起来自己意会。它作为一个调侃意味的网络用语,经常出现在聊天对话中用来调

    2025年09月22日
    40
  • 洗发水哪种好用-

    选洗发水,是要看个人发质,头发油偏油性还有偏干性,所以不同的发质,最好买相应的洗发水。如果追求头发柔顺,就很容易令头发油腻、脏、塌。如果想追求头发清爽,又很容易令头发粗糙、干、飞散、修复性能差。这两者本身就互为矛盾,很难同时做得到。每个公司的产品都有各自的优缺点,就看你的发质还有你想要达到的要求是哪

    2025年09月23日
    48
  • 实操教程“微乐河北麻将怎么一直赢”其实确实有挂

    亲,微乐河北麻将怎么一直赢这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好,总是好牌,而且好像能看到其他人的牌一样。所以很多小伙伴就怀疑这款游戏是不是有挂,实际上这款游戏确实是有挂的通过添加客服微:本司针对手游进行匹配,选择我们的四大理由:1、软件

    2025年09月24日
    38
  • 教程分享“手机跑得快开挂多少钱”附开挂脚本详细步骤

    无需打开直接搜索微信:本司针对手游进行,选择我们的四大理由:1、软件助手是一款功能更加强大的软件!无需打开直接搜索微信:2、自动连接,用户只要开启软件,就会全程后台自动连接程序,无需用户时时盯着软件。3、安全保障,使用这款软件的用户可以非常安心,绝对没有被封的危险存在。

    2025年09月24日
    50
  • 北京十大未解之谜

    北京十大未解之谜为:故宫的西六宫、虎坊桥湖广会馆、朝内81号、钟楼、后海镇水神兽、礼王府、隆福寺、佛香阁、330路公交车事故、被看不见的东西推下地铁。1、故宫的西六宫现在的故宫对外只开放了一部分。所以就有传说,因为故宫历经三代王朝,有很多冤魂野鬼夜晚出没。据说有很多人夜晚看到奇异的动物,速度很快,有

    2025年10月09日
    14

发表回复

本站作者后才能评论

评论列表(4条)

  • 东郭光正
    东郭光正 2025年09月06日

    我是臻昂号的签约作者“东郭光正”!

  • 东郭光正
    东郭光正 2025年09月06日

    希望本篇文章《mysql udf函数怎么调用》能对你有所帮助!

  • 东郭光正
    东郭光正 2025年09月06日

    本站[臻昂号]内容主要涵盖:生活百科,小常识,生活小窍门,知识分享

  • 东郭光正
    东郭光正 2025年09月06日

    本文概览:网上有关“mysql udf函数怎么调用”话题很是火热,小编也是针对mysql udf函数怎么调用寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够...

    联系我们

    邮件:臻昂号@sina.com

    工作时间:周一至周五,9:30-18:30,节假日休息

    关注我们