赞
踩
前言:公司搞了一个飞机场的项目,但都是内网且需要用sqlServer数据库,几经折腾终于是弄通了,在这里记录一下,希望可以帮助到需要搞这东西的人。
主要工具:Navicat12,sqlServer 2008 R2 管理工具
主要用到navicat的数据传输功能。
1、本地连接先连接到sqlServer数据库中(sqlServer默认是允许远程连接的)
文件-》新建连接-》选择sqlServer,打开如下界面
连接名:随便起
主机:sqlServer所在服务器的IP
初始数据库:master
验证:SqlServer验证
用户名:sqlServer端设置的用户名
密码:sqlServer端对应的密码
2、连接成功后,进行数据传输
选中你本地的连接-》工具-》数据传输,打开如下页面
左边是你本地的连接和数据库,右边是sqlServer连接和数据库。然后下一步即可,这样数据就导入过去了。
1)首先导入sqlServer的依赖
- <dependency>
- <groupId>com.microsoft.sqlserver</groupId>
- <artifactId>sqljdbc4</artifactId>
- <version>4.0</version>
- </dependency>
2)设置四个连接字符串,默认端口就是1433
- driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
- url: jdbc:sqlserver://10.0.113.19:1433;DatabaseName=airplan
- username: sa
- password: Abc123
3)改sql语法
sqlServer的语法和mysql也差不多少,想concat(),limit 这样的没有,具体语法可以百度一下,我当时的做法是,那mysql的sql语句和sqlServer的sql语法,去执行,得到的结果一样就算是行的。
当时数据层的框架使用的是mybatisPlus,他的crud方法可以根据不同的数据库驱动操作不同的数据库,这样就不用改了。
有一点需要特别注意,sqlServer的表名都是数据库名.表名的形式,这个需要改一下,当时就是郁闷了一段时间因为这个问题。
sqlServer驱动导入不进来。当时是先看的maven库中有没这两个jar包,要是没有就从网上找吧。
然后把这两个jar包,放到项目的lib目录下(没有就新建一个),然后在maven中这么引入就行
- <!--引入本地的jar包 start-->
- <dependency>
- <groupId>com.ms.sqljdbc</groupId>
- <artifactId>com.ms.sqljdbc</artifactId>
- <version>4.0</version>
- <scope>system</scope>
- <systemPath>${project.basedir}/lib/sqljdbc4-4.0.jar</systemPath>
- </dependency>
- <dependency>
- <groupId>com.ms.mssql</groupId>
- <artifactId>com.ms.mssql</artifactId>
- <version>6.5</version>
- <scope>system</scope>
- <systemPath>${project.basedir}/lib/mssql-jdbc-6.5.4.jre10-preview.jar</systemPath>
- </dependency>
- <!--引入本地的jar包 end-->
但这样打包的时候jar包还是不会被打包进去,还需要在<build>中,加入一句话
- <plugins>
- <plugin>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-maven-plugin</artifactId>
- <configuration>
- <fork>true</fork>
- <!--打包时将system范围内的jar包也打进去-->
- <includeSystemScope>true</includeSystemScope>
- </configuration>
- </plugin>
- </plugins>
ok,到此数据库迁移的工作就基本做完了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。