实现合并多行字符串(整理)

来源:互联网 发布:linux sleep 实现 编辑:程序博客网 时间:2024/05/16 13:53

     最近在做基于jira的质量管理相关报表,涉及到了很多对jira数据库的查询与统计操作。其中有一个需求是,对未解决额缺陷按其影响的项目模块和优先级进行分类统计,并以图形化的形式显示在报表中。

     jira用的是Mysql数据库,在对项目模块和优先级进行分类统计中,本打算用一个function实现将一个缺陷影响的所有模块记录写成一个字符串并记录到一个字段上,但是,Mysql由于安全设置的问题,在保存function时出现如下提示:

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)' on query.

在网上搜集到如下的分析和解决办法:

分析:
根据系统提示,导致该错误的原因可能是一个安全设置方面的配置,查手册log_bin_trust_function_creators参数缺省0,是不允许function的同步的。
一般我们在配置repliaction的时候,都忘记关注这个参数,这样在master更新funtion后,slave就会报告错误,然后slave stoped。
处理过程:
登陆mysql数据库
> set global log_bin_trust_function_creators = 1;

     本想改一下的,但是jira的数据库不归我们管,我们只能查询数据,一旦改了配置出现问题就担待不起了,由于原来管这个的人又跳了槽,考虑到使风险最小,只能另办法了。查了一下午,真是够累的。

要下班了记录下连接:

http://it.dianping.com/sql-for-xml-path.htm

http://topic.csdn.net/t/20060825/15/4975652.html

http://topic.csdn.net/u/20090714/17/5FE6A0F7-CE78-4936-BE31-21D462236059.HTML

 

原创粉丝点击