linux mysql udf打包_Linux下MySQL 5.1编写UDF 并运行(Install)获取当前时间的毫秒数...

Mysql 无法获取当前时间的毫秒数自行定制UDF,以提供current_ms方法1. 编写 C 文件#ifdef STANDARD#include lt;stdio.hgt;#inc

Mysql 无法获取当前时间的毫秒数

自行定制UDF,以提供current_ms方法

1. 编写 C 文件

#ifdef STANDARD

#include

#include

#ifdef __WIN__

typedef unsigned __int64 ulonglong;

typedef unsigned __int64 longlong;

#else

typedef unsigned long long ulonglong;

typedef long long longlong;

#endif /*__WIN__*/

#else

#include

#include

#endif

#include

#include

#include

#include

#ifdef HAVE_DLOPEN

/* These must be right or mysqld will not find the symbol! */

extern "C" {

my_bool current_ms_init(UDF_INIT *initid, UDF_ARGS *args, char *message);

void current_ms_deinit(UDF_INIT *initid);

longlong current_ms(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error);

}

my_bool current_ms_init(UDF_INIT *initid, UDF_ARGS *args, char *message) {

return 0;

}

void current_ms_deinit(UDF_INIT *initid) {

}

longlong current_ms(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error) {

struct timeval tv;

gettimeofday(&tv, NULL);

longlong value = tv.tv_sec*1000 + (tv.tv_usec/1000);

return value;

}

#endif /* HAVE_DLOPEN */

2. 编写 Makefile 文件

#其中 mysql 的安装位置要根据您的机器自行修改 (可用 mysql_config --cfalgs    mysql_config --libs 来获取)

MYSQLCFLAGS = -I/opt/soft/mysql/include/mysql -DUNIV_LINUX -DUNIV_LINUX

MYSQLLIBS = -rdynamic -L/opt/soft/mysql/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm

libcurrent_ms.so : libcurrent_ms.o

ld -shared -o libcurrent_ms.so libcurrent_ms.o -fPIC

libcurrent_ms.o : libcurrent_ms.cc

gcc -Wall $(MYSQLCFLAGS) $(MYSQLLIBS) -c libcurrent_ms.cc -o libcurrent_ms.o -fPIC

clean:

rm libcurrent_ms.o libcurrent_ms.so

install:

cp libcurrent_ms.so /opt/soft/mysql/lib/mysql/plugin/

3. make clean

4. make

5. make install

6. 登录mysql

7. 创建UDF

create function current_ms returns integer soname 'libcurrent_ms.so';

8. 使用 current_ms 方法

select current_ms();

9. 销毁UDF

drop function current_ms;

logo.gif

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/262290.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Daily Scrum 2012/11/08

TeamSH-IT 今天经完成了之前在数据定义存在一些问题。sui老师经过小组之间的交流,完成了对数据定义的最终版。周末将进行初步的整合和测试。 详细的完成情况: 组员今天任务明天任务Hu Renjun 任务213 整合各个模块功能 完成完整的数据流过程 任务213 …

部分不能激活Win 7 的问题分析和解决方案

前言 总所周知,目前Win7的激活程序多如牛毛,但总有些朋友的机器就是激活不了,以至于要刷BIOS等高危操作。 本文通过对Win7激活程序的原理分析,介绍一种能够解决大部分OEM版系统激活Win7的方法,希望能够帮助需要的朋友…

回调 that.setdata 数据不更新_重大利空落地,或损上亿利润,乐普医疗回调近四成...

摘要:心脏支架集采后,价格不足700元,预计其利润受损超亿元。11月5日,全国冠状支架招标结果公布后,医药行业遭受重创。11月6日收盘,医疗行业指数基金——医疗ETF()重挫,较早从事心血管介入医疗器…

android下创建文件夹和修改其权限的方法

原文:http://www.cnblogs.com/wanqieddy/archive/2011/12/28/2304906.html 由于工作的需要,今天研究了在android下创建文件夹和修改其权限的方法,需要了解的是每个应用程序包都会有一个私有的存储数据的目录(类似文件夹&#xff0…

python中直方图-Numpy,Python中的“拉伸”直方图(级别)

这是一种方法- def stretch(a,lower_thresh,upper_thresh): r 255.0/(upper_thresh-lower_thresh2) # unit of stretching out np.round(r*(a-lower_thresh1)).astype(a.dtype) # stretched values out[a out[a>upper_thresh] 255 return out 根据OP,设置的标准是&#x…

Windows 2008 R2服务管理器刷新失败

在更新补丁的过程中,服务器强制重启后,在正常开机登录到系统后 打开服务器管理,角色及功能错误无法打开,参考以下链接解决。 参考 http://yewind.blog.51cto.com/33144/379097 http://social.technet.microsoft.com/Forums/en-US…

预处理指令

由ANSI的标准规定, 预处理指令主要包括: #define #error #if #else #elif #endif #ifdef #ifndef #undef #line #pragma 由上述指令可以看出, 每个预处理指令均带有符号"#"。下面只介绍一些常 用指令。 …

MFC字体

GDI字体分3类:点阵字体(raster font)、笔画字体(stroke font)和Truetype字体。 默认点阵字体有7种: System (用于SYSTEM_FONT) 无衬线 西方 有衬线 gb2312…

decimal double java_Java BigDecimal和double BigDecimal类

BigDecimal类对于不需要任何准确计算精度的数字可以直接使用float或double,但是如果需要精确计算的结果,则必须使用BigDecimal类,而且使用BigDecimal类也可以进行大数的操作。BigDecimal类的常用方法如表11-15所示。表11-15 BigDecimal类的常…

python自然语言处理案例-Python自然语言处理 NLTK 库用法入门教程【经典】

本文实例讲述了Python自然语言处理 NLTK 库用法。分享给大家供大家参考,具体如下: 在这篇文章中,我们将基于 Python 讨论自然语言处理(NLP)。本教程将会使用 Python NLTK 库。NLTK 是一个当下流行的,用于自…

分享45套2011年和2012年的高质量免费网站模板

日期:2012-11-11 来源:GBin1.com 前端时间我们分享了12套超酷的后台管理员界面网站模板,相信看过的朋友肯定已收入囊中了,今天呢,我们继续推荐45套高质量的免费网站模版,相信如果需要自己搭建网站的朋友肯…

基于PageRank的作弊检测算法

Spam Rank TrustRank Topical TrustRank Anti-Trust Rank HostRank BadRank 转载于:https://www.cnblogs.com/youwang/archive/2009/11/12/2310659.html

使用log4j日志-配置载入问题

1.在eclipse中,把log4j.properties放在类路径下,在项目启动时就会自己主动载入。2.在idea中。把log4j.properties放在类路径下,可是项目启动时不能直接载入(原因不明白,哎,这个让我纠结了一下午&#xff01…

水晶报表中对某一栏位值进行处理_【节能学院】能耗管理系统在某超市嘉兴店二期工程的设计与应用...

摘要:随着社会生活水平的提高,经济的繁荣发展,人们对能源的需求逐渐增长,由此带来的能源危机日益严重。学校建筑如何实时的了解、分析和控制学校的能源消耗已成为需要解决的迫在眉睫的难题。传统的能源消耗智能以月/季度/年为周期…

python数据分析天气预报论文_用python+sklearn(机器学习)实现天气预报数据 模型和使用...

项目地址系列教程0.前言在上一篇教程里我们已经获取了所需要的全部数据,包括训练数据集和测试数据集,使用ProcessData()调用,所以接下来写模型的建立和预测1.建立模型没段代码在文章后面都会整合成一段,分段展示只是便于阅读a.准备…

偶然在网上看到的题目,jQuery功底如何一测便知晓!!!!!!

笔者最终实现的效果如下:    参考答案下载地址 通过手写html代码实现如图效果:以下题目全部使用jQuery来做 当点击“加载数据”按钮时根据提供的数据通过jQuery动态创建表格数据填充该表格。数据见data.txt文件。效果如图: 当点击“设置样…

何为生气

天下有不如意事,不当忿激与争。   ———陈于陛   生活中经常有人为一些小事而生气,其实他们也不想这样做,但就是控制不了自己的心情。生气不但影响了自己的身心健康,而且还影响到周围的人际关系。   从前,有个妇…

ps作业素材和成品_没有用过PS的画框工具,你还敢说你是设计大佬?

大家好,过完春节大伙们都踏上了离乡的征程,再多不舍,看看自己的钱包,还是要出发!2019年已经悄然过去一个半月,你的学习计划开始了嘛?来吧继续学习PS-cc2019,今天继续给大家带来CC2019 ps 的基础…

isfile java_isfile 方法

检验给出的路径是否是一个文件:os.path.isfile() 6.检验给出的路...从零开始-JSP动态网页制作基础培训教程 6、判断是文件还是文件夹 使用File类对象的isFile()方法(返回True表示 为文件)和isDirectory()方法(返回True表示为文 件夹......A、 FileReader B、BufferedReader C、…

第二次阅读作业

No Silver Bullet - Essence and Accidents of Software Engineering: 银弹能杀死狼人。如果我没记错的话,在漫画中柯南对黑暗组织而言就是一颗银弹。生活中是不是真的有银弹我还是不太确定。假如有,银弹就是 一点弱点也没有么?如…