标签:
SQL Server数据库基础
一、安装SQL Server数据库
setup.exe->安装->全新SQL Server独立安装或向现有安装添加功能->输入序列号->下一步->默认实例->混合模式->输入sa密码->实例账号添加当前账号即可。
如果想要其他机器访问这台机器的sqlserver,需要使用windows防火墙中的入站规则,端口写1433.
二、SQL Server配置管理器
包含各个sql服务,连接数据库时,务必保证sql server服务已开启.
三、系统数据库
1、master数据库
主系统数据库,丢失该库,sqlserver将无法启动。
2、tempdb数据库
用来创建临时对象,包括临时表,存储过程,表变量,全局临时表以及游标等。
3、model数据库
sqlserver实例中创建的全部数据库的模型。
4、msdb数据库
主要用于sqlserver代理的支撑后台。
5、resource数据库
资源数据库,隐藏的制度数据库。主要用于改进sqlserver版本升级时的进程功能。
6、distribution数据库
分发数据库,只有将实例配置为复制的分发者时,该库才存在。复制中所有的元数据与各种类型的历史记录都存储在此数据库中。
四、数据库的组成
数据库主要由文件和文件组组成。数据库中的所有数据和对象(表、存储过程和触发器等)都被存储在文件中。
1、文件
主要数据文件:存放数据和数据库的初始化信息。每个数据库只有一个主要数据文件,默认扩展名是.mdf。
次要数据文件:存放除主要数据文件意外的所有数据文件。有些数据库可能没有次要数据文件,也可能有多个次要数据文件,默认扩展名是.ndf。
事物日志文件:存放用于恢复数据库的所有日志信息。每个数据库至少有一个事物日志文件,也可以有多个事物日志文件,默认扩展名是.ldf。
2.文件组
主文件组:包含主要数据文件和任何没有明确指派给其他文件组的文件。系统表的所有页都分配在主文件组中。
用户定义文件组:主要是在create database 或者alter database 语句中,使用filegroup关键字指定的文件组。
五、创建数据库
创建数据库时包括常规、选项和文件组 常规用于设置数据库的名称大小位置等,选项和文件组中定义数据库的一些选项,显示文件和文件组的统计信息,默认即可。
SQL Server 默认创建了一个primary文件组,用于存放若干个数据文件,但日志没有文件组。
SQL Server数据库的数据文件分逻辑名称和屋里名称。逻辑名称是在sql 语句中引用文件时所使用的名称;物理名称用于操作管理系统。
维护SQL Server数据库
一、脱机与联机
数据库->右键脱机,copy之后右键联机->完成
二、分离与附加
分离不是删除数据库而是从服务器中移除。 exec sp_detach_db @dbname=‘webDB‘
数据库->右键分离->需要时再右键附加上。create database webDB on (filename=‘c:\webDB.mdf‘),(c:\webDB.ldf) for attach
三、导入和导出
数据库->右键导入->选择数据源->完成。
数据库->右键导出->输入服务器名称,账号密码->选择导出方式->完成。
四、备份和恢复
数据库->右键备份->完整备份->完成。
数据库->右键恢复->选择bak文件->完全覆盖->完成。
五、收缩数据库和文件
因为数据库空间分配采用的是现分配、后使用的机制,所以数据库使用过程中就可能会存在多余的空间。收缩数据库功能允许对数据库的每个文件进行收缩。
数据库和日志文件都可以收缩,可以手动收缩额自动收缩。
自动收缩:数据库->右键属性->选项->自动收缩->完成。
手动收缩:数据库->右键任务收缩->数据库/文件->确定。
六、生成与执行SQL脚本
将数据库生成SQL脚本:数据库->编写脚本->create database ->完成。
将数据表生成SQL脚本:数据表->编写脚本->create table->完成。
执行SQL脚本:新建查询->输入脚本->执行。
数据表
一个数据库由多张数据表组成,每个数据表由行和列组成
一、数据类型
1、基本数据类型
精确数字类型:bigint、int、smallint、tinyint、bit、decimal、numeric、money、smallmoney。
浮点数据类型:freal、float。
字符数据类型:text、ntext、char、nchar(n)、varchar、nvarchar(n)。
二进制数据类型:binary、varbinary、image。
日期/时间数据类型:time、date、smalldatetime、datetime、datetime2、datetimeoffset。
2、用户自定义数据类型
2.1 可编程性->类型->用户自定义数据类型->右键新增数据类型。
2.2 exec sp_addtype code_name,‘char(8)‘,‘not null‘
二、数据表的数据完整性
表中的每一列都有一组属性,如名称、数据类型、数据长度和是否为空等。
1.空与非空值(null/not null):定义是否允许为空
2.默认值(default):默认指定值。
3.标识属性(identity):自动为表中插入新行生成连续递增的编号,因标识值通常唯一,所以标识列通常定义为主键(整型数据类型,标识列不能为空)。
4.约束:用来定义自动强制数据库完整性的方式,约束优先于使用触发器、规则和默认值。
非空:用户必须输入一个值。可以有多个非空约束。
检查:用来指定一个布尔操作,限制输入到表中的值。
唯一性:用户的应用程序向列中输入一个唯一的值,值不能重复,但可以为空。
主键:可以保证实体完整性,一个表只能有一个主键,主键不能为空。
外键:控制存储在外键表中的数据。一个表可以有多个外键。
三、企业管理器管理数据表
创建表:数据库->表->右键新建表->输入列名->选择数据类型->是否允许空->保存输入表名。
修改表:数据库->表->右键设计。
重命名:数据库->表->f2。
删除表:数据库->表->右键删除。
非空约束->列->列属性->允许NULL -> 是/否。
主键约束->列->右键->设为主键->完成。
唯一约束->列->索引/键->唯一->是->完成。
检查约束->列->右键->check约束->表达式->完成。
默认约束->列->列属性->默认值。
外键约束->列->右键->关系->表和列规范->选择外键表列。
四、关系的创建与维护
SQL Server 是一个关系数据库管理系统(Relational Datable Management System,RDBMS),当数据库中包含多个表时,需要通过主关键字来建立表之间的关系。
主表user 从表work 主表wid右键->关系->主键work id 外键 user wid。
五、计算列
列属性->计算列规范->公式。
标签:
原文地址:http://www.cnblogs.com/baidawei/p/4710218.html