第一章 SQL Server2012 系统概述
目标 实例的概念 sqlserver2012对软件硬件的要求 安装和配置2012 使用SQLServer Management Studio使用 使用SQL Server联机丛书
1 SQL Server2012采用的数据模型是关系模型
2 能够执行SQL语句,分析查询计划,显示查询统计情况,和实现索引分析等功能的SQL工具是查询编辑器
3 查询编辑器中执行SQL语句的快捷键F5
第二章 创建数据库
目标
1 了解数据库组成 了解系统数据库
2 理解数据库文件,文件组的种类和作用
3 掌握在管理数据库时常用的系统存储过程
4 创建数据库
5 管理数据库,修改数据库设置,重命名和删除数据库
6 分离和附加数据库
1 常用的数据库对象包括表、索引、视图、触发器、存储过程、约束和用户等
数据库文件组成,至少包含一个主数据文件mdf和一个日志文件ldf,,最小为512kb,理想容量为数据库大小的25%-40%。 还可以有一个或多个次数据文件ndf。 数据库文件还可以指定不同的组,上篇文章中有。
系统数据库主要包含五个数据库,
1 master数据库,数据库服务器的核心。
2 model数据库,用户数据库的模板。
3 msdb数据库,提供运行SQL Server Agent工作的信息,是SQL Server的一个windows服务,运行制定好的计划任务,可自动执行,不需要更改
4 tempdb数据库,临时数据库,用来存储创建的临时用户对象,(全局临时表,临时存储过程,表变量),SQL Server创建的内部对象和由数据库修改事务提交的行记录。每次启动都会重新创建tempdb,断开连接时会自动删除信息
5 resource数据库,ssms看不到的数据库,只读数据库,包含SQL Server所有的系统对象
2 文件组,PRIMARY文件组为自动创建的文件组,未指明存放位置时都是用此文件组,指定文件组时需要使用的部分代码在此
1。创建数据库(nnn),如果存在,先删除,再创建.
2. 向数据库nnn添加文件组(f1)
3. 向数据库nnn添加文件,并且放在f1中。
4. 查询文件组f1中的文件情况.
5. 创建表,并制定放置f1中。
6. 查询表和文件组的关系。
范例:
create database nnn
use nnn
alter database nnn add filegroup f1
alter database nnn add file(name='kk',filename='d:\kk.ndf') to filegroup f1
sp_helpfilegroup f1
create table renshi(id int not null,
name varchar(50) not null, salary money not null) on f1
sp_help renshi
3 系统存储过程
系统常用的存储过程,存放在master中,以sp_开头,常用的有以下三个
1 sp_helpdb,查看数据库的拥有者,数据库容量,创建日期,以及数据库的基本信息
3 sp_helpfilegroup,查看数据库文件组信息
5 sp_rename 重命名数据库,数据列名
4 标识符即命名规则,不可以是纯数字
创建,管理,修改,重命名数据库,代码后补
第三章 创建数据表
目标
1 掌握SQL Server的数据类型
2 了解数据表的分类
3 会创建和管理(修改,重命名,删除)数据库
4 会查看数据表信息
5 掌握在管理数据表时常用的系统存储过程
1 数据表简介
系统表 数据库引擎使用的表
用户自定义表
临时表 存储在tempdb中,分本地临时表和全局临时表,本地以#开头,全局以##开头,本地临时表在用户断开后就被删除,全局临时表在所有用户断开时才会被删除
2 数据类型
1 数值型
整形
bigint(8b)>int(4b)>smallint(2b)>tinyint(1b)>bit(用于存储逻辑关系可转化为true false)
其中bit取值 0 1 NULL
小数
decimal(18, 0) 默认decimal数据,18位10进制数,0位小数,可指定,numeric时可以设置identity属性,两者用于存储带固定精度和小数位数的数值类型
float(1-53)可不指定,采用只入不舍方式存储,占用8b,用于存储浮点数据类型
real占用4b,用于存储浮点数据类型
2 字符型数据类型
char(n) 定长字符,最大8000,用于学号,课程号等固定长度字符,一个存储单位占一个字节,汉子两个字节
nvarchar(n)变长字符,最大8000,一个存储单位占一个字节,存储大多数字符串、
text 最大存储2^31-1个字符的变长字符串,用于存储大文本,不必制定文本长度
3 二进制数据类型 使用时需要加上前缀如0xAB
binary(n) 最大8000需要指定长度
varbinary(n) 最大8000变长二进制数据,需要指定长度
image 最大2^31-1个字节的变长二进制文件,存储word文档,图片,可执行文件等,一般不能直接用insert插入
4 日期时间数据类型
datetime 存储时间和日期数据,占用8b,精确到秒,从1753到9999
smalldatetime 占用4b,精确到分,范围从1900到2079
5 货币数据类型
money 整数部分19位,小数部分四位,占用8b,范围-2^63-2^63-1
smallmoney 2b,范围,-214743.3648--214743.3647
6 Unicode数据类型 一个字符编码2B,一般在存储多语言时使用
nchar(n) 最大4000,一个存储单位两个字节,必须指定长度,长度不足时自动用空格代替
nvarchar(n) 最大4000,变长字符,需要指定长度
ntext 存储文本数据,最大2^30-1个字符的变长unicode字符串,不必制定长度
7 sql_variant数据类型
存放混合数据,用于列,参数,变量和用户定义函数的返回值中,某个列需要存储时间,文本,数值混合存储时,采用var,不可存储ntext,text,image
8 timestamp数据类型
占用8b,在增加或删除数据时,列值会自动更新,一般用于加版本戳
9 自定义数据类型
USE db
GO
EXEC sql_addtype rtu,'nvarchar(30)','NOTNULL'
GO
增加一个nvarchar30的数据类型
3 数据表操作--代码后补
1 创建数据表
2 查看数据表结构
1 USE dbname
2 GO
3 sp_help reader
3 修改表结构
4 删除表 DROPE TABLE tablename