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

本文涉及的产品
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
云数据库 RDS SQL Server,基础系列 2核4GB
简介: 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。存储只有两种可能值的数据,如YesNo

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之间的浮点数。占字节空间

字符串

数据类型

描述

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日到公元9999年 1231日间所有的日期数据。占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)在图形界面下,输入数据,测试是否符合上面表的要求。


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

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS&nbsp;SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
4月前
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
6月前
|
SQL 存储 监控
SQL Server的并行实施如何优化?
【7月更文挑战第23天】SQL Server的并行实施如何优化?
144 13
|
6月前
|
SQL
解锁 SQL Server 2022的时间序列数据功能
【7月更文挑战第14天】要解锁SQL Server 2022的时间序列数据功能,可使用`generate_series`函数生成整数序列,例如:`SELECT value FROM generate_series(1, 10)。此外,`date_bucket`函数能按指定间隔(如周)对日期时间值分组,这些工具结合窗口函数和其他时间日期函数,能高效处理和分析时间序列数据。更多信息请参考官方文档和技术资料。
|
6月前
|
SQL 存储 网络安全
关系数据库SQLserver 安装 SQL Server
【7月更文挑战第26天】
81 6
|
6月前
|
SQL 数据采集 数据管理
SQL数据:探索、管理与优化的全面解析
在信息化时代,数据成为企业核心资产。本文探讨SQL在数据探索、管理与优化中的作用:使用DESC、SELECT了解数据集;评估数据质量;发现数据特征。管理方面,涵盖数据存储、检索、更新与维护。优化则涉及索引、查询及数据库设计,确保高性能和效率。掌握SQL能有效挖掘数据价值,支持企业决策与创新。
106 1
|
5月前
|
SQL 安全 Java
驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client
驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client
558 0
|
6月前
|
SQL 存储 数据挖掘
SQL数据:挖掘、管理与应用的深度探索
在数据驱动的时代, SQL作为数据库管理和查询的基石至关重要。本文探讨了SQL数据的挖掘、管理与应用。数据挖掘包括数据查询、聚合与关联,帮助发现数据模式和趋势以支持决策。数据管理确保数据的完整性、一致性和可用性,涉及存储、检索、更新和维护。而数据的应用则能推动业务发展、优化运营、提升客户体验和促进创新。通过高效利用SQL,企业可以最大化其数据资产的价值并在竞争中脱颖而出。
148 0
|
6月前
|
SQL 监控 数据库
SQL Server 查询超时问题排查
【7月更文挑战第8天】排查 SQL Server 查询超时涉及五个主要方面:检查复杂查询、评估服务器性能、审视配置参数、更新统计信息和分析执行计划。关注点包括查询的结构(如连接、子查询和索引),服务器资源(CPU、内存、网络延迟),连接和内存设置,以及统计信息的时效性。通过这些步骤可定位并解决性能瓶颈。
143 0
|
SQL 数据库
如何快速备份还原Sql Server 数据库
备份数据库 选择你要备份的数据库,鼠标右键单击,选择任务-备份   弹出备份数据库窗口,选择添加    弹出选择备份目标窗口,点击浏览,选择存放备份数据库的目录,输入文件名,后缀名输入.bak,点击确定,确定,备份完成     还原数据库  鼠标右键单击数据库,选择还原文件和文件   ...
1375 0