第一章    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