atitit。mssql sql server 转换mysql  及 分页sql ast的搭建

1. 主要的的转换::函数的转换,分页的转换 1

2. 思路::mssql sql >>ast>>mysql 1

3. sql主要的如下::: 1

4. Mssql2MysqlConvertor (proj:wechatAdm4propt 2

1. 主要的的转换::函数的转换,分页的转换

2. 思路::mssql sql >>ast>>mysql

3. sql主要的如下:::

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

SELECT groupid,

groupname,

convert(varchar, createtime, 120) AS createtime,

weixinuserCount,

remark

FROM

(SELECT row_number() over(                             ORDER BY createtime DESC) AS rowNum,                       d1.groupid,

d1.groupname,

d1.createtime,

d1.remark,

(SELECT count(d2.UserID)

FROM t_mb_weixinuser d2

WHERE d2.groupid=d1.groupid)AS weixinuserCount

FROM t_mb_group d1

WHERE 1=1)

AS groups

WHERE rowNum BETWEEN 1 AND 10

4. Mssql2MysqlConvertor (proj:wechatAdm4propt

public class Mssql2MysqlConvertor {

@Inject

SqlAstBuilderP32 astBldr;

SqlAstP32 ast;

/**

* @author attilax 老哇的爪子

* @since p33 j_t_37

*/

public static void main(String[] args) {

String txt = filex.read(pathx.classPath() + "/mssql1.sql");

txt = strUtil.replaceEnterChar2space(txt);

txt = txt.replaceAll("row_number.*?,", "");

Mssql2MysqlConvertor x = new Mssql2MysqlConvertor();

String sql_mysql = x.convert(txt);

System.out.println(JsonX.toJsonStrO88(x.ast));

System.out.println(sql_mysql);

}

/**

* @author attilax 老哇的爪子

* @return

* @since p33 m_j_45

*/

private String convert(String txt) {

)

.toString();

page_s = strUtil.replaceDoubleSpace(page_s);

String[] a = page_s.toUpperCase().trim().split("BETWEEN");

].toLowerCase().trim().split("and");

SqlPageParam p = new SqlPageParam();

;

].trim());

ast = new SqlAstP32();

, txt.indexOf(page_s));

ast.pagePart = p;

if (ast.preOther.trim().toLowerCase().endsWith("where"))

ast.preOther = ast.preOther + " 1=1 ";

return ast.preOther + " limit " + p.startIndex + "," + p.pagesize;

}

atitit。mssql sql server 转换mysql 及 分页sql ast的搭建的更多相关文章

  1. 从SQL Server到MySQL,近百亿数据量迁移实战

    从SQL Server到MySQL,近百亿数据量迁移实战 狄敬超(3D) 2018-05-29 10:52:48 212 沪江成立于 2001 年,作为较早期的教育学习网站,当时技术选型范围并不大:J ...

  2. 数据库 SQL Server 到 MySQL 迁移方法总结

    最近接手一起老项目数据库 SQL Server 到 MySQL 的迁移.因此迁移前进行了一些调查和总结.下面是一些 SQL Server 到 MySQL 的迁移方法. 1. 使用 SQLyog 迁移 ...

  3. atitit.跨语言实现备份mysql数据库 为sql文件特性 api 兼容性java c#.net php js

    atitit.跨语言实现备份mysql数据库 为sql文件特性 api 兼容性java c#.net php js 1. 两个方法:: bat vs mysqldump(推荐)  vs   lang  ...

  4. sql server vs mysql

    1.中文: my.ini [mysqld] character-set-server=utf8 character-set-client=utf8 data\testdb\db.opt default ...

  5. SQL Server和MySQL数据库

    导读:接下来的网上商城的项目,需要用到MySQL数据库了.这个对于我来说,是一个新接触的东西,按照惯例,在刚开始学习一个东西的时候,先从宏观上去了解它.本篇博客,先介绍SQL Server的基本内容, ...

  6. 通过sql server 连接mysql

    图文:通过sql server 连接mysql   1.在SQL SERVER服务器上安装MYSQL ODBC驱动; 驱动下载地址:http://dev.mysql.com/downloads/con ...

  7. Sql Server 2012 的新分页方法分析(offset and fetch) - 转载

    最近在分析 Sql Server 2012 中 offset and fetch 的新特性,发现 offset and fetch 无论语法的简洁还是功能的强大,都是相当相当不错的 其中 offset ...

  8. 数据库如何从SQL server转换到SQLite

    我之前用的是SQL server数据库,但是客户那里觉得安装这个大的数据库比较卡,说是导致蓝屏了,硬往SQL server上赖,没有办法客户是上帝么,给他换个小点的数据库吧!考虑Access,不行这个 ...

  9. 对Oracle 、SQL Server、MySQL、PostgreSQL数据库优缺点分析

    对Oracle .SQL Server.MySQL.PostgreSQL数据库优缺点分析 Oracle Database Oracle Database,又名Oracle RDBMS,或简称Oracl ...

随机推荐

  1. (重置adb.exe)android关于The connection to adb is down, and a severe error has occured.这个问题的解决办法

    转自:http://www.sjsjw.com/kf_mobile/article/3_24710_14072.asp 这里补充一个更简单的方法(和下面的方法一样的效果): 有时在打开模拟器的时候会出 ...

  2. VC++ 6.0下OpengGL配置以及glut配置

    转自:http://blog.sina.com.cn/s/blog_5f0cf7bd0100c9oa.html OpenGL官方网站(英文) http://www.opengl.org 下面我将对Wi ...

  3. 记录memcache分布式策略及算法

    摘要 http://wenku.baidu.com/link?url=eUmpWDGFiFguyQLxwmXwRYmbnW7Wm1Bo79dGoomSnmOPWDIA5-FFSTNRI7MBQq8QG ...

  4. ubuntu 设置静态IP GW

    网卡配置静态IP地址 编辑文件/etc/network/interfaces: sudo vi /etc/network/interfaces 并用下面的行来替换有关eth0的行:# The prim ...

  5. Debian+Pure-ftpd+MySQL+User manager for PureFTPd

    1. 安装pure-ftpd.MySQL apt-get purge vsftpd apt-get purge pure-ftpd apt-get purge pure-ftpd-common apt ...

  6. iOS:三种数据库的小总结

    三种数据库总结:sqlite.FMDB.CoreData   1.sqlite数据库(C语言)需要方法和属性:  (1)数据类型: –INTEGER 有符号的整数类型 –REAL 浮点类型 –TEXT ...

  7. 解决 Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile)

    在项目构建的时候遇到了这样的问题:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile ...

  8. Could not find RubyGem cocoapods 错误

    之前安装过一次cocoapods 后来,安装octopress,安装过一次较新版的ruby,可能是由于ruby安装,把之前的cocoapods删除了,结果使用,出现如图错误 解决: 重新安装 coco ...

  9. 在github Pages上部署octopress搭建个人博客系统

    原文链接:http://caiqinghua.github.io/blog/2013/08/26/deploy-octopress-to-github-pages/ 引子 上一篇博客已经说了为什么要搭 ...

  10. nginx-rtmp流媒体服务器搭建【转】

    nginx-rtmp https://github.com/pengqiuyuan/nginx-rtmp nginx-rtmp 流媒体服务器的搭建(采集桌面,手机直播) 在线Demo,直播自己的pc机 ...