SQL Server数据库技术WEEK1

本文介绍了数据库的基本概念,包括其组织形式、发展历程、主要类型及特点。涵盖了从人工管理到数据库管理的不同阶段,并详细解释了关系模型的特点、实体完整性约束、E-R图表示法等关键知识点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据库:按一定的结构组织的,能为多个用户共享、具有尽可能小的冗余度、并与应用程序彼此独立的数据集合

数据库的发展:1.人工管理阶段:数据和程序在一起,如果要改变处理的数据需要修改程序,通用性差,数据利用率低

2.文件系统阶段,数据文件和程序独立,由于文件不是集中管理,不同系统各自需要一套文件,即使文件相同,冗余。

3.数据库管理阶段,数据只有一份,消除不一致性。数据库管理系统=数据库

数据库的类型:1.层次模型:上层和下层多个结点有联系

2.网状模型:每一个结点都可以与它有联系的节点建立连接。

3.关系模型:使用二维表表示

属性名,属性值

表的第一行决定了关系模式 表结构


1.2

关系模型的特点:1,每一列不可再分。

                             2,同一个关系中不能出现相同的字段名

                             3,关系中不出现完全相同的两条纪录

                             4.关系中任意交换两行,两列位置不影响数据的信息

键/码:能唯一标识一个个体的属性。一个关系可以有多个键,主键只能有一个。键或者主键可以包含多个属性,称为组合键

外键:在一个表中不是主键,在另一个表中是主键


实体完整性约束:1,主键只能有一个,主键的取值不能重复也不能为空

2.参照完整性:外键的取值必须是另一表中对应主键的取值之一

3.用户定义的完整性:数据库用户根据数据的含义队数据所做的限定



1.3 E-R图,逻辑表达

实体的描述:实体图

联系的描述:菱形:实体间的联系

E-R图:实体联系图

实体之间的联系:1,多对多联系

                             2,一对一联系,A中一个实体至多和B中的一个实体有联系,允许一个实体不与另一个实体中的任何实体有联系

                             3,一对多联系


1.4 设计数据表

E-R图中的一类实体,设计为一个表,一个联系也设计为一个表,实体名称和联系名称就是表名

数据类型:int,整型,decimal,numeric,实型,char,varchar,可变长字符串,date,time,datetime

数据库的规范化理论

基本原则:1,数据表的字段是不可分的单一属性,不重复

                  2,一个表中,只有一类事物或活动的信息



### SQL Server 数据库自动备份工具推荐 对于SQL Server数据库而言,有多种方法可以实现自动化备份操作。其中一种常用的方法是利用内置组件——SQL Server代理来完成这一任务[^2]。 #### 使用SQL Server代理进行自动备份 通过配置维护计划并借助于SQL Server代理的服务功能,能够轻松设置周期性的备份作业。为了确保此方案正常运作: - **确认SQL Server代理状态**:保证该服务处于运行中,并将其启动类型设为“自动”,这样即便计算机重启也能继续执行预定的任务而不需人工干预[^4]。 - **启用必要的通信协议**:在某些情况下可能还需要调整SQL Server网络配置中的TCP/IP选项以允许部连接请求到达服务器端口。 除了上述基于图形界面的操作,还可以编写T-SQL脚本来定义更复杂的逻辑流程或集成到其他应用程序里去控制备份过程。下面给出一段简单的命令行示例用于创建一个新的备份工作项: ```sql USE msdb; GO EXEC sp_add_job @job_name=N'Weekly Database Backup'; GO EXEC sp_add_jobstep @job_name=N'Weekly Database Backup', @step_name=N'Setup backup step', @subsystem=N'TSQL', @command=N'BACKUP DATABASE YourDBName TO DISK = N''C:\Backup\YourDBName.bak'' WITH NOFORMAT, INIT;'; GO EXEC sp_add_schedule @schedule_name=N'Every Sunday Midnight', @freq_type=8, @active_start_time=000000; GO EXEC sp_attach_schedule @job_name=N'Weekly Database Backup', @schedule_name=N'Every Sunday Midnight'; GO EXEC sp_add_jobschedule @job_name=N'Weekly Database Backup', @name=N'Run Every Week'; GO ``` 以上代码片段展示了如何建立每周一次的全量备份策略,并指定了具体的存储路径以及覆盖旧版本的行为方式。 #### 第三方解决方案概述 如果希望获得更加灵活的功能特性或是跨平台的支持,则可考虑采用第三方开发的产品作为补充手段。这些产品通常提供了友好的用户交互界面、详细的日志记录机制以及丰富的通知渠道等功能模块,在企业环境中尤为适用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值