springboot项目中mysql转sqlserver数据库

一、数据转到sqlserver中去,比较难搞的是sqlserver的自增长问题,上一篇有提到

二、springboot配置连接sqlserver数据库:

加依赖和yml配置如下:

spring:
  datasource:
    driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
    password: 123456
    url: jdbc:sqlserver://localhost:1433;databaseName=jtsys3
    username: sa
    type: com.alibaba.druid.pool.DruidDataSource

<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.18</version>
        </dependency>

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>mssql-jdbc</artifactId>
    <version>9.4.0.jre8</version>
</dependency>

最好用这个microsoft的sqlserver驱动,别的比如jtds,我连了报错

三、项目中出现的一些报错

1.limit关键字无法使用

解决方案有两种:

SQL Server中Limit 语句怎么使用-群英  使用top关键字

使用pagehelper翻页插件(套就行了,也不管咱实现的),好处是省去mapper文件中的limit startindex,pagesize

添加依赖和代码

<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper-spring-boot-starter</artifactId>
    <version>1.3.0</version>
</dependency>

        需要的参数:当前页码,每页条数
        Page<SysLog> page=PageHelper.startPage(pageCurrent,pageSize);
        //3.查询当前页日志记录
        List<SysLog> records=sysLogDao.findPageObjects(username); //查询数据
        //4.封装结果并返回
        return new PageObject<>(pageCurrent,pageSize,(int) page.getTotal(),records);

        page.getTotal()获取总条数

2.now()函数不能用

在sqlserver中用GETDATE()平替

3.GeneratedKeys自动填充对象(entity)中的id无法使用

删掉这两个属性,然后只能老实地根据name字段查找id

4.username like concat("%",#{username},"%")模糊查询concat函数无法使用

sqlserver中用username like '%'+#{username}+'%'

mybatis mysql 模糊查询_MyBatis Oracle、MySQL、DB2、SQLServer的like模糊查询 - CodeAntenna 这里是所有数据库中模糊查询语句

5、还有个where关键字没解决,呜呜

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值