1、SQL SERVER与MySQL数据存储的差别mysql
一、SQL SERVER中的datetime,保留到微秒(秒后小数点3位),而mysql仅保留到秒,转换后是否会影响业务,若是影响,须要新增一个字段专门来存储微秒或者毫秒,虽然mysql中没有时间数据类型的精度到达微秒或者毫秒,可是mysql提供对微秒的相关处理函数microsecond、extract跟date_formatsql
二、MySQL使用tinyint代替SQL SERVER的bitide
三、自增处理,mysql的自增步长跟增量值是整个实例统一的,不能每一个表格动态修改,因此这里在转化的过程当中,为auto_increment,根据实例的设置来处理函数
2、SQL SERVER与MySQL数据类型的对应关系如图orm
ID SQL SERVER MySQL Description
1 bigint bigint
2 binary binary
3 bit tinyint SQL SERVER的bit类型,对于零,识别为False,非零值识别为True。
MySQL中没有指定的bool类型,通常都使用tinyint来代替
4 char char
5 date date
6 datetime datetime 注意,mssql的保留到微秒(秒后小数点3位),而mysql仅保留到秒
7 datetime2 datetime 注意,mssql的保留到微秒(秒后小数点7位),而mysql仅保留到秒
8 datetimeoffset datetime 注意,mssql的保留时区,这个须要程序本身转换
mssql的保留到微秒(秒后小数点7位),而mysql仅保留到秒
9 decimal decimal
10 float float
11 int int
12 money float 默认转换为decimal(19,4)
13 nchar char SQL SERVER转MySQL按正常字节数转就能够
14 ntext text
15 numeric decimal
16 nvarchar varchar
17 real float
18 smalldatetime datetime
19 smallint smallint
20 smallmoney float 默认转换为decimal(10,4)
21 text text
22 time time 注意,mssql的保留到秒后小数点8位,而mysql仅保留到秒
23 timestamp timestamp
24 tinyint tinyint
25 uniqueidentifier varchar(40) 对应mysql的UUID(),设置为文本类型便可。
26 varbinary varbinary
27 varchar varchar
28 xml text mysql不支持xml,修改成text
xml