【总结】sqlserver

1 基础

1.1 简介

sqlserver是闭源的,必须运行在windows平台上的数据库。默认事务隔离级别是读已提交(commit read)。全称Microsoft® SQL Server,说以也被称为mssql

1.2 数据类型(和mysql对比)

(1)Integer

mysql ms sqlserver 说明
tinyint tinyint 1byte
smallint smallint 2byte
medium int int medium 3byte, int 4byte
bigint bigint 8 byte

(2)BigDecimal

mysql ms sqlserver 说明
decimal(m,d) decimal(p,s) 表示列可以存储s位小数的p位数,p范围1-65,s范围0-30
默认精度和小数位数为(18,0)

(3)Floating

mysql ms sqlserver 说明
float(n) float(24) m=24 4byte, n=53 8byte
double(m,d) float(53)
real(m,d) float(53)
其中 n 为用于存储 float 数值尾数的位数,以科学记数法表示,因此可以确定精度和存储大小。如果指定了 n,则它必须是介于 1 和 53 之间的某个值。n 的默认值为 53

(4) Date and Time

mysql ms sqlserver 说明
datetime datetime2 “yyyy-mm-dd hh:mm:ss”格式,日期和时间的组合
date date “yyyy-mm-dd”格式表示的日期值
time time hh:mm:ss”格式表示的时间值
TIMESTAMP smalldatetime “yyyymmddhhmmss”格式表示的时间戳值,TIMESTAMP列用于INSERT或UPDATE操作时记录日期和时间。如果你不分配一个值,表中的第一个TIMESTAMP列自动设置为最近操作的日期和时间
year samllint “yyyy”格式的年份值

(5) String

mysql ms sqlserver 说明
char char 固定长度。char(10)耗损10字节硬盘
varchar varchar 可变长度,会根据实际存储数据的大小动态重新分配存储空间
time time hh:mm:ss”格式表示的时间值
nchar char支持的是本地默认编码(char是1字节),nchar是unicode编码(char是2字节)。nchar占用空间比char大。比如char格式下一个字母只占用一个字节,汉字占用两个,nchar所有字符都占用两个字节。char 和nchar的最大容量都是8000字节,意味着char可以最多存放8000个字符,nchar最多存放4000个字符
nvchar mysql不支持nchar,nvarchar,ntext类型
text text 如果存储的字符不超过4000,建议使用varchar
ntext

1.3 sqlserver和mysql语法区别

1.分页
(1)mysql:select * from table limit (start-1)*pagesize,pagesize
(2)sql server:
①方式1:三重循环
先取前20页,然后倒序,取倒序后前10条记录,这样就能得到分页所需要的数据,不过顺序反了,之后可以将再倒序回来,也可以不再排序了,直接交给前端排序

select * 
from (select top pageSize * 
from (select top (pageIndex*pageSize) * 
from student 
order by sNo asc ) -- 其中里面这层,必须指定按照升序排序,省略的话,查询出的结果是错误的。
as temp_sum_student 
order by sNo desc ) temp_order order by sNo asc

②方式2:offset /fetch next(2012版本及以上才有)

select * from student order by sno  offset (start-1)*pagesize rows fetch next pagesize rows only ;

2.插入
INSERT INTO table(col1,col2) values(value1,value2);
MySQL支持insert into table1 set t1 = '', t2='',但是MSSQL不支持这样写

posted @ 2020-09-29 16:11  mu_阿成  阅读(158)  评论(0)    收藏  举报
// 侧边栏目录 // https://blog-static.cnblogs.com/files/douzujun/marvin.nav.my1502.css