SQL Server数据库的管理及维护

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介:

理论:

首先打开 SSMS(SQL server Management Studio)

使用SSMS可以实现好多功能:注册服务器,连接到数据库引擎,配置服务器的属性,创建对象,管理文件和文件组,附加或分离数据库,启动数据库脚本编写工具,管理安全性

,查看系统日志等。

数据文件和事务日志文件组成,一个数据库至少应该有一个 是数据文件和一个事务日志文件。

SQL server 数据库具有 以下四种类型:

主数据库文件:主数据库文件包含数据库的启动信息,扩展名为.mdf

次要数据库文件:除主数据库文件以外的所有其他数据文件都是次要数据库文件,扩展名为.ndf

事务日志文件:恢复数据库所有事务日志的信息,每个数据库必须有一个事务日志文件。扩展名为.ldf

文件流数据文件:可以使得基于SQL server 的应用程序能在文件系统中存储非结构化的数据如:文档,图片等

数据文件由若干个64kb大下的区组成,每个区由8个8kb连续页组成。

主数据文件 :文件 ID 01

页 01:0000

页 01:0001

页 01:0002

……………

页 01:0511

 

次要数据文件 :文件 ID 02

页 02:0000

页 02:0001

页 02:0002

……………

页 02:0127

实践操作: 建删改查 

1:创建数据库

双击打开 SSMS(SQL server Management Studio)连接进去

图片1

新建数据库

 

图片3

图片2 

要合理估计数据库的大小和增长值!扩展数据库就是在这,属性 弹出 数据库属性对话框

图片4

收缩数据库:

图片5

分离数据库是指数据库从SQL Server 里移除,但是保证数据库的数据文件和日志文件完好无损!

图片6

附加数据库

图片7

 图片8

确定就行了

删除数据库

 图片9

数据库表的管理

理论:

每一行代表一条唯一的记录,每一列代表记录中的一个字段。

数据完整性分为4类

1. 实体完整性 :特定表唯一实体

2. 域完整性: 指定项列的项的有效性

3. 引用完整性: 例如数据输入或删除,必须A里由得数据,b里才能引用修改

4. 用户定义完整性: 约束和表及约束,存储过程及触发器

数据类型:精准数字,近似数字,日期和时间,字符串,Unicode字符串,二进制字符串,其他数据类型。

精准数字

int

主要整数数据类型,占4个字节空间

bigint

存储整数值超过int数据类型支持范围,占8个字节

smallint

存储一些常限定的在特定范围内的数值型数据,占用2个字节

tinyint

存储有限数目的数值时很有用,占1个字节

bit

整数类型,其值只能是0,1,null,只有2中可能

decimal

用来存储固定精度和范围的数值型数据

money

用来表示钱和货币值,8个字节

smallmoney

用来表示钱和货币值,8个字节

numeric

用来存储固定精度和范围的数值型数据

近似数字

float 用于表示浮点数值数据的大致数值类型
real 用于表示浮点数值数据的大致数值类型

日期和时间

date 用来表示日期,占3个字节
time 用来表示一天中的某个时间,占5个字节
datetime 用来表示日期和时间,占8个字节
Datetime2 比datetime 数值范围更大,默认的小数精度更高
dateimeoffset 增加了时区

smalldatetime

精确到一分钟,占4个字节空间

字符串

char 存储固定长度,最多包含8000个字符,非unicode字符数据
varchar 存储可变长度,非unicode字符数据
Text 用于存储大量的的非unicode字符数据

Unicode字符串

nchar 用于存储定长Unicode字符数据
nvarchar 用于存储定长Unicode字符数据
ntext 用于存储定长Unicode字符数据

二进制字符串

binary 用于存储可达8000字节长的定长的二进制数据,当输入表的内容接近相同长度时
Varbinary 用于存储可达8000字节长的定长的二进制数据,当输入表的大小可变时用的
image 用于存储变长的二进制数据

实践操作:创建表

例子:某公司安装SQL server 2008 企业版32位,现在需要在名为 test的数据库中创建表,表名称为 student 其中包含列为:学生编号(int) 姓名(nvarchar50),身份证号(varchar18)

所在班级(tinyint),成绩(tinyint),备注(nvarchar2000)其中学生编号自动生成,从1开始,每增加一人则编号自动加1,要求输入成绩的时候,必须为0-100,设置身份证为主键。

 

 图片10

图片11

图片12

设置主键

图片13

 

图片14

 图片15

CHECK约束公式

Age >= 0 AND age <=200 值在0-200之间的数值

图片16

图片17

保存该表名字为 student

图片18

用T-SQL 语句操作数据表

插入数据

 

Insert[into]<表名> [列名] values <值列表>

 图片20图片19

 

图片20

然后点执行

 图片22

图片23

更新数据,update (表名) set (列名=更新值)[where<更新条件>]

 图片24

 图片25

删除数据

Delete from<表名>【where<删除条件>】

 图片26

 图片27

使用Truncate table 语句删除表中数据

Truncate Table <表明>

图片28

这时数据都没了

实验完成!



本文转自 cs312779641 51CTO博客,原文链接:http://blog.51cto.com/chenhao6/1196447

相关实践学习
使用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天前
|
SQL Oracle 关系型数据库
sql语句创建数据库
在创建数据库之前,请确保你有足够的权限,并且已经考虑了数据库的安全性和性能需求。此外,不同的DBMS可能有特定的最佳实践和配置要求,因此建议查阅相关DBMS的官方文档以获取更详细和准确的信息。
|
15天前
|
SQL 算法 数据库
【SQL server】玩转SQL server数据库:第三章 关系数据库标准语言SQL(二)数据查询
【SQL server】玩转SQL server数据库:第三章 关系数据库标准语言SQL(二)数据查询
88 6
|
2天前
|
SQL 数据管理 关系型数据库
如何在 Windows 上安装 SQL Server,保姆级教程来了!
在Windows上安装SQL Server的详细步骤包括:从官方下载安装程序(如Developer版),选择自定义安装,指定安装位置(非C盘),接受许可条款,选中Microsoft更新,忽略警告,取消“适用于SQL Server的Azure”选项,仅勾选必要功能(不包括Analysis Services)并更改实例目录至非C盘,选择默认实例和Windows身份验证模式,添加当前用户,最后点击安装并等待完成。安装成功后关闭窗口。后续文章将介绍SSMS的安装。
6 0
|
2天前
|
SQL Java 数据库连接
Java从入门到精通:2.3.2数据库编程——了解SQL语言,编写基本查询语句
Java从入门到精通:2.3.2数据库编程——了解SQL语言,编写基本查询语句
|
4天前
|
SQL 缓存 数据库
sql 数据库优化
SQL数据库优化是一个复杂且关键的过程,涉及多个层面的技术和策略。以下是一些主要的优化建议: 查询语句优化: 避免全表扫描:在查询时,尽量使用索引来减少全表扫描,提高查询速度。 使用合适的子查询方式:子查询可能降低查询效率,但可以通过优化子查询的结构或使用连接(JOIN)替代子查询来提高性能。 简化查询语句:避免不必要的复杂查询,尽量使SQL语句简单明了。 使用EXISTS替代IN:在查询数据是否存在时,使用EXISTS通常比IN更快。 索引优化: 建立合适的索引:对于经常查询的列,如主键和外键,应创建相应的索引。同时,考虑使用覆盖索引来进一步提高性能。 避免过多的索引:虽然索引可以提高查询
|
4天前
|
SQL XML 数据库
sql导入数据库命令
在SQL Server中,数据库导入可通过多种方式实现:1) 使用SSMS的“导入数据”向导从各种源(如Excel、CSV)导入;2) BULK INSERT语句适用于导入文本文件;3) bcp命令行工具进行批量数据交换;4) OPENROWSET函数直接从外部数据源(如Excel)插入数据。在操作前,请记得备份数据库,并可能需对数据进行预处理以符合SQL Server要求。注意不同方法可能依版本和配置而异。
|
8天前
|
SQL 安全 Go
如何在 Python 中进行 Web 应用程序的安全性管理,例如防止 SQL 注入?
在Python Web开发中,确保应用安全至关重要,主要防范SQL注入、XSS和CSRF攻击。措施包括:使用参数化查询或ORM防止SQL注入;过滤与转义用户输入抵御XSS;添加CSRF令牌抵挡CSRF;启用HTTPS保障数据传输安全;实现强身份验证和授权系统;智能处理错误信息;定期更新及审计以修复漏洞;严格输入验证;并培训开发者提升安全意识。持续关注和改进是保证安全的关键。
17 0
|
10天前
|
SQL 安全 网络安全
IDEA DataGrip连接sqlserver 提示驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接的解决方法
IDEA DataGrip连接sqlserver 提示驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接的解决方法
23 0
|
11天前
|
SQL 数据库
数据库SQL语言实战(二)
数据库SQL语言实战(二)
|
11天前
|
SQL 关系型数据库 数据库
【后端面经】【数据库与MySQL】SQL优化:如何发现SQL中的问题?
【4月更文挑战第12天】数据库优化涉及硬件升级、操作系统调整、服务器/引擎优化和SQL优化。SQL优化目标是减少磁盘IO和内存/CPU消耗。`EXPLAIN`命令用于检查SQL执行计划,关注`type`、`possible_keys`、`key`、`rows`和`filtered`字段。设计索引时考虑外键、频繁出现在`where`、`order by`和关联查询中的列,以及区分度高的列。大数据表改结构需谨慎,可能需要停机、低峰期变更或新建表。面试中应准备SQL优化案例,如覆盖索引、优化`order by`、`count`和索引提示。优化分页查询时避免大偏移量,可利用上一批的最大ID进行限制。
38 3