1.sqlserver概述
sqlserver由微软开发的关系型数据库管理系统(RDBMS)
sqlserver主要包含数据库引擎、分析服务、集成服务、报表服务等
数据库对象包括:表、视图、函数、索引、存储过程、事务日志、数据库关系图、序列、用户、角色、报表等等
数据库服务器是架设在服务器操作系统上的软件
一个数据库服务器通常可以创建多个数据库实例(以下简称数据库)
一个数据库至少有一个数据库文件和一个事务日志文件组成
一个数据库可以包含多个数据库文件,但一个数据库文件只会属于一个数据库
一个数据库只能包含一个主数据库文件,用于存储启动信息和部分或全部数据,其他的为次数据库文件(0或多个),数据库文件会分别存储在不同的页当中
页是sqlserver的基本存储单元
创建数据库时默认逻辑文件名和物理文件名一样,主数据库文件名为xx.mdf
sqlserver中的数据表分为临时表和永久表,临时表存储在tempdb系统数据库中
约束:主键约束、外键约束、唯一约束、检查约束、默认约束
2.sqlserver management studio
1.取消阻止修改表结构的选项
3.常用系统sql
select top 10 * from sys.database_files #查看当前数据库文件相关信息
select top 10 * from sys.filegroups #查看当前数据库组相关信息
select top 10 * from sys.types #sqlserver所有字段类型信息
exec sp_spaceused; #查询当前数据库信息
exec sp_helpdb; #查询所有数据库信息
select top 10 * from information_schema.columns #查询当前数据库所有表和字段及类型
4.sqlserver 数据类型
分类 | 类型 | javaType | 字节 | 描述 |
整型 | bigint | long | 8 | [-2^63, 2^63-1] |
int | int | 4 | [-2^31, 2^31-1] | |
smallint | short | 2 | [-2^15, 2^15-1] | |
tinyint | short | 1 | [0, 255] | |
浮点 | float | double | 8 | 精度15位,取值例如:1.123456789123456 |
real | float | 4 | 精度7位,取值例如:1.1234567 | |
数字 | decimail | BigDecimal | 4 | 精度最大18位,默认整数位18,小数位0 |
货币 | money | BigDecimal | 8 | 整数位不超过15位,小数位不超过4位 |
smallmoney | BigDecimal | 4 | 整数位不超过6位,小数位不超过4位 | |
布尔 | bit | boolean | 1 | 存储boolean类型的值 |
日期 | datetime | Timestamp | 8 | 1753-1-1 9999-1-1,精确到3/100秒 |
smalldatetime | Timestamp | 4 | 1900-1-1 2079-6-6,精确到分钟 | |
date | Date | 3 | 0001-1-1 9999-12-31,只存储日期部分 | |
time | Time | 5 | 只存储时间部分,精确到100纳秒 13:12:53.1234560 | |
datetimeoffset | DateTimeOffset | 10 | 等价于datetime,只是精确到100纳秒,并且存储时区,2021-10-03 12:27:33.0000000 +08:00 | |
字符串 | varchar(n) | String | 1-8000 | 可变长度字符,英文字母占1字节,中文字符占2字节 |
char(n) | String | 1-8000 | 一旦定义,字符长度固定,不足补白,超出截取 | |
nvarchar(n) | String | 1-4000 | 可变长度字符,一个字符占两字节,适合存储纯中文 | |
nchar(n) | String | 1-4000 | 一旦定义,字符长度固定,不足补白,超出截取,同上适合中文 | |
text | String | 1-(2^31-1) | 文本类型 | |
ntext | String | 1-(2^30-1) | 文本类型,适合中文 | |
二进制 | binary(n) | byet[] | 1-8000 | 固定长度 |
vbinary(n) | byet[] | 1-8000 | 长度不固定 | |
image | byet[] | 1-2^31 | 可边长度,适合存储图片类 |
5.sqlserver常用函数
7.TSQL(Transact-sql)