0


Windows server 2016——SQL server 数据库和表的管理

  • **作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 **
  • 公众号:网络豆
  • ** 座右铭:低头赶路,敬事如仪**
  • 个人主页: 网络豆的主页​​​​​

写在前面

本系列文章将会讲解SQL server 数据库和表的管理,并且会同步视频进行安装讲解。

视频教程:【sql server 表的管理教程】

前期回顾:Windows server 2016——SQL server 简介与安装


介绍

SQL Server是由微软公司开发的关系型数据库管理系统,现在是全世界主流数据库之一。它具备方便使用、可伸缩性好、相关软件集成程度高等优势,能够从单一的笔记本上运行或以高倍云服务器集群为基础,或在这两者之间任何一种方式上运行。


一.SQL Server的数据存储结构

1.文件类型

数据文件:

  • 主数据文件(.mdf) 有且只有一个
  • 次要(辅助)数据文件(.ndf)可有可无,有可以多个。

事务日志文件(.ldf)至少有一个

  • 记录所有事务的SQL语句
  • 用于恢复数据库


二.数据库管理

1.创建数据库

数据库名称

数据文件和日志文件

  • 名称
  • 文件初始大小
  • 自动增长
  • 存储路径

** 2.扩展数据库**

作用

  • 为数据文件和日志文件分配更多的空间

方法

  • 扩展现有文件的自动增长设置
  • 添加新文件

** 3.收缩数据库**

作用

  • 释放数据库中未使用空间

方法

  • 手动收缩
  • 自动收缩

** 4.分离和附加数据库**

作用

  • 将数据库更改到不同SQL Server 实例中

分离数据库

  • 将数据库从实例中移除

附加数据库

  • 通过定位主数据库文件,将数据库附加到另一实例

** 5.删除数据库**

只能删除用户数据库,系统数据库无法删除


三.表的基本概念

1.数据完整性

实体完整性

每一行必须是唯一的实体

引用完整性

确保所有表中数据的一致性,不允许引用不存在的值

域完整性

检查每一列是否有效

用户定义的完整性

制定特定的业务规则


2.主键

  • 用于唯一标识表中的行数据
  • 由一个或多个字段组成
  • 具有唯一性
  • 不允许取空值(NULL)
  • 一个表只能有一个主键


四.常用数据类型

数据类型

是数据的一种属性,指定对象可保存的数据的类型

**SQL Server **数据类型

精准数字

近似数字

字符串

•**Unicode **字符串

二进制字符串

日期和时间

其他数据类型


精准数字

数据类型

描述

int

整型,存储-231231之间的整数,占4****字节空间

bit

整型,取值01NULL。存储只有两种可能值的数据,如Yes或****No

decimal

存储从-1038-11038-1****的固定精度和范围的数值型数据,须指定范围和精度。范围是小数点左右所能存储的数字的总位数。精度是小数点右边存储的数字的位数

money

表示钱和货币值。存储从-922 337 203 685 477.5808 922 337 203 685 477.5807之间的数据,精确到货币单位的万分之一,占8****字节空间

近似数字

数据类型

描述

float

表示浮点数值数据的大致数值。表示**-1.79E+3081.79E+308 之间的任意数,占8**字节空间

real

表示**-3.40E+383.40E+38之间的浮点数。占4 **字节空间

字符串

数据类型

描述

char

**存储固定长度,非 ****Unicode 字符数据。须指定列长,最多包含 8000 **个字符

varchar

*存储可变长度,非 *Unicode 字符数据。需要指定该列的最大长度,最多包含231*个字符*

text

存储大量的非 Unicode字符数据,最多可以有231-1或大约20****亿个字符

** Unicode字符串**

数据类型

描述

nchar

存储定长Unicode字符型数据。Unicode使用双字节结构来存储每个字符,在空间占用上增加了一倍

nvarchar

存储变长Unicode字符型数据

ntext

存储大量的Unicode字符型数据

** 二进制字符串**

数据类型

描述

binary

*存储可达***8000 **字节长的定长的二进制数据

varbinary

*存储可达***8000 **字节长的变长的二进制数据

image

存储变长的二进制数据,最大可达**231-1或大约20**亿字节

日期和时间

数据类型

描述

date

*日期。存储从公元元年11日到公元99991231日间所有的日期数据。占3字节空间*

time

*表示一天中某个时间,不能感知时区且基于 *24 小时制,占5*字节空间*

datetime

表示日期和时间。存储从175311日到99991231日间所有的日期和时间数据,占8个字节空间


五.使用SSMS操作数据表

1.默认值

如果没有为列指定值,默认值则指定列中使用的值

没有为列指定默认值

•如果允许空值,则将向该列中插入 NULL

•如果不允许空值,在用户为该列提供值前,将无法保存行

2.标识列

包含系统自动生成的序号值的列

  • 列值由系统按一定规律生成,不允许空值
  • 列值不能重复,唯一标识表中每一行
  • 每个表只能有一个标识列

3.创建****标识列(自增列)

  • 类型(type)
  • 种子(seed)
  • 递增量(increment)

4.检查约束

  • 限制列可接受的值
  • 通过逻辑表达式创建检查(CHECK)约束

例:

成绩大于等于0并且小于等于100
成绩>=0 and 成绩〈=100


六.使用T-SQL语句管理数据表

1.创建表

CREATE TABLE 表名
(
    列名1 数据类型(大小),
    列名2 数据类型(大小),
    列名3 数据类型(大小),
    ……    
)

2.删除表

DROP TABLE  <表名>

七.操作练习

操作要求:

(1)创建一个名为benet的数据库,数据库文件存放在c:\benet,如图所示:

(2)将benet数据库设置为自动收缩。

(3)创建一个名为student的表,表中字段如下图所示:

字段要求:学员编号为从1开始自动编号,身份证号为主键列,所在班级的默认值为t3145,成绩输入要求大于等于0,小于等于100(成绩 >=0 and 成绩 <=100 )。

(4)在图形界面下,输入数据,测试以上的要求是否符合要求。

(5)使用语句删除student表。

(6)使用语句再次创建student表。如图所示:

(7)在表的“设计”视图下查看是否符合上面表的要求。

(8)在图形界面下,输入数据,测试是否符合上面表的要求。


** 创作不易,求关注,点赞,收藏,谢谢~ **

标签: 数据库

本文转载自: https://blog.csdn.net/yj11290301/article/details/132546978
版权归原作者 网络豆 所有, 如有侵权,请联系我们删除。

“Windows server 2016——SQL server 数据库和表的管理”的评论:

还没有评论