《 ASPNET数据库网站设计教程(C#版)》 配套教学资源 第6章 SQL Server数据库 基础 本章内容: SQL Server使用基础,包括数据库、表、记录的操作等内容 本章重点:数据库和表的创建、常用TSQL语句的使用、数据库的分离和附加 圖王出妖社
第6章 SQL Server数据库 基础 《ASP.NET数据库网站设计教程(C#版)》 配套教学资源 本章内容:SQL Server使用基础,包括数据库、表、记录的操作等内容。 本章重点:数据库和表的创建、常用T-SQL语句的使用、数据库的分离和附加
61数据库的操作 SQL Server数据库是存储数据的容器,即数据库是一个由 存放数据的表及支持这些数据的存储、检索、安全性和完 整性的逻辑成分所组成的集合。 数据库文件 SQL Server数据库有3种类型的文件。 (1)主数据文件( Primary) 主数据文件是数据库的起点,指向数据库中文件的其他部 分,包含数据库的启动信息,并且存储部分或全部数据。 每个数据库都包含也只能包含一个主数据文件。主数据文 件的推荐扩展名是mdf
◼ SQL Server数据库是存储数据的容器,即数据库是一个由 存放数据的表及支持这些数据的存储、检索、安全性和完 整性的逻辑成分所组成的集合。 ◼ 1.数据库文件 ◼ SQL Server数据库有3种类型的文件。 ◼ (1)主数据文件(Primary) ◼ 主数据文件是数据库的起点,指向数据库中文件的其他部 分,包含数据库的启动信息,并且存储部分或全部数据。 每个数据库都包含也只能包含一个主数据文件。主数据文 件的推荐扩展名是.mdf。 6.1 数据库的操作
2)二级数据文件( Secondary) 二级数据文件也称辅助数据文件,用于存储未包含在主数 据文件内的其他数据。辅助数据文件不是必选的,即一个 数据库可以有一个或有多个辅助数据文件,也可以没有辅 助数据文件。辅助数据文件的推荐扩展名是.ndf (3)事务日志文件 事务日志文件用来记录事务对数据库的更新操作。每个数 据都有一个相关的事务日志。事务日志记录了 SQL Server 所有的事务以及与这些事务相关的数据库的变化 每个数据库至少有一个日志文件,也可以拥有多个日志文 件。日志文件推荐扩展名是Jdf
◼ (2)二级数据文件(Secondary) ◼ 二级数据文件也称辅助数据文件,用于存储未包含在主数 据文件内的其他数据。辅助数据文件不是必选的,即一个 数据库可以有一个或有多个辅助数据文件,也可以没有辅 助数据文件。辅助数据文件的推荐扩展名是.ndf。 ◼ (3)事务日志文件 ◼ 事务日志文件用来记录事务对数据库的更新操作。每个数 据都有一个相关的事务日志。事务日志记录了SQL Server 所有的事务以及与这些事务相关的数据库的变化。 ◼ 每个数据库至少有一个日志文件,也可以拥有多个日志文 件。日志文件推荐扩展名是.ldf
2.创建数据库 在 SQL Server management Studio中创建数据库主要有两种 方式: 种是在对象资源管理器中创建数据库 另一种是在査询编辑器中用TS○语句创建数据库。 数据库名采用 Pascal命名规则,以名词命名,直观、可读 性强 (1)在对象资源管理器中创建数据库 可以在对象资源管理器中的图形界面环境下创建数据库。 【演练6-1】下面以创建名为 TestDB数据库为例,介绍在 SQL Server Management Studio中使用对象资源管理器创建 数据库的过程
◼ 2.创建数据库 ◼ 在SQL Server Management Studio中创建数据库主要有两种 方式: ➢ 一种是在对象资源管理器中创建数据库 ➢ 另一种是在查询编辑器中用T-SQL语句创建数据库。 ◼ 数据库名采用Pascal命名规则,以名词命名,直观、可读 性强。 ◼ (1)在对象资源管理器中创建数据库 ◼ 可以在对象资源管理器中的图形界面环境下创建数据库。 ◼ 【演练6-1】 下面以创建名为TestDB数据库为例,介绍在 SQL Server Management Studio中使用对象资源管理器创建 数据库的过程
①执行菜单命令“开始”→“所有程序”→“ Microsoft SQL Server20082→ SQL Server management Studio”。 ②显示“连接到服务器”对话框,如图6-1所示,在“服 务器类型”框中选择“数据库引擎”,在“服务器名称” 框中选择 SQL Server的实例名称(会有所不同),在“身 份验证”框中选择“ Windows身份验证”,最后单击“连 接”按钮。 ■③连接成功后,显示 SQL Server management Studio主窗口 ,在“对象资源管理器”窗格中,右击“数据库”节点 从快捷菜单中单击“新建数据库”命令,如图6-2所示
◼ ① 执行菜单命令“开始”→“所有程序”→ “Microsoft SQL Server 2008”→“SQL Server Management Studio”。 ◼ ② 显示“连接到服务器”对话框,如图6-1所示,在“服 务器类型”框中选择“数据库引擎”,在“服务器名称” 框中选择SQL Server的实例名称(会有所不同),在“身 份验证”框中选择“Windows身份验证”,最后单击“连 接”按钮。 ◼ ③ 连接成功后,显示SQL Server Management Studio主窗口 ,在“对象资源管理器”窗格中,右击“数据库”节点, 从快捷菜单中单击“新建数据库”命令,如图6-2所示
I Microsoft SQL Server Management Studio 文件(编E)视图(工具①口wM社区(帮助(H 建N份份B固|回a 2 SQLServer2008 对象资源答理器 连接O)·辔要了回S 日6.sg2008( SQL Server1001600·pCaa) 胺务器类型): 据库引擎 服务器名称③) 口安金性新建强库(N iad身份验证一 □服务器 附加(A) □复制 用户名 cAns 5还原交件和交件 启动 Power Shell(H □记住密码) 连擦G小[取助选质0) 图6-1“连接到服务器”对话框 图6-2数据库的快捷菜单 ■④显示“新建数据库”窗口,在“数据库名称”框中输入 TestDB,如图6-3所示。数据库保存的路径默认为 \Program Files Microsoft SQL Server\ MSSQL10. MSSQLSERVER2008 MSSQLIDATA。如 果要更改保存路径,可单击路径后的按钮,在打开的“定 位文件夹”对话框中选定路径。其他选项采用默认设置, 单击“确定”按钮完成创建
◼ ④ 显示“新建数据库”窗口,在“数据库名称”框中输入 TestDB,如图6-3所示。数据库保存的路径默认为 C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER2008\ MSSQL\DATA。如 果要更改保存路径,可单击路径后的 按钮,在打开的“定 位文件夹”对话框中选定路径。其他选项采用默认设置, 单击“确定”按钮完成创建
⑤在“对象资源管理器”窗格中展开“数据库”节点后, 右击,从快捷菜单中单击“刷新”命令,可以看到新建的 TestDB数据库,如图6-4所示。 回回 Microsoft SQL Server Management Studio Fol-O-EX 阵本·帮助 文件(病0图工具①w社区(帮 新建查询N0出出B②|日a踢 数据库名称0 所有者0 认值》 连Q·了回S B\sql2008(SQL Server 10.0.1600-PC\aaa □数库 逻辑名称文件卖型文件组初始大小M)自动增长 文件名 Tesol 行数据 量为1不课制增长(=cmma Te14g日志 增为m,不限制增长飞 c: \Retro Pil 连摧 图□数率关系图 □ 图□网义词 □可编程性 亚宝接性 □ Service broker □存储 □安全性 □复制 团□理 SQL Server代理(已禁用代理xp 图6-3“新建数据库”窗口 图6-4新建的数据库
◼ ⑤ 在“对象资源管理器”窗格中展开“数据库”节点后, 右击,从快捷菜单中单击“刷新”命令,可以看到新建的 TestDB数据库,如图6-4所示
62表的操作 SQL Server数据库通常包含多个表。表是一个存储数据的 实体,具有唯一的名称。可以说,数据库实际上是表的集 合,具体的数据都是存储在表中的。表是对数据进行存储 和操作的一种逻辑结构,每个表代表一个对象 1.数据类型类别 ■表中字段的数据类型可以是 SQL Server提供的系统数据类 型,也可以是用户定义的数据类型。 SQL Server2008提供 了丰富的系统数据类型,见表6-1
◼ SQL Server数据库通常包含多个表。表是一个存储数据的 实体,具有唯一的名称。可以说,数据库实际上是表的集 合,具体的数据都是存储在表中的。表是对数据进行存储 和操作的一种逻辑结构,每个表代表一个对象。 ◼ 1.数据类型类别 ◼ 表中字段的数据类型可以是SQL Server提供的系统数据类 型,也可以是用户定义的数据类型。SQL Server 2008提供 了丰富的系统数据类型,见表6-1。 6.2 表的操作
表6-1系统数据类型 数据类型 符号标识 整数型 bigint, int, smallint, tinyint 精确数值型 decimal numeric 浮点型 float. real 货币型 money, smallmoney 位型 字符型 char, varchar, varchar(MAX) Unicode字符型 nchar, nvarchar, nvarchar(MAX) 文本型 text, ntext 二进制型 binary, varbinary, varbinary (MAX) 日期时间类型 datetime. smalldatetime. date time. datetime. datetimeoffset 时间戳型 timestamp 图像型 Image 其他 cursor,sql variant, table, uniqueidentifier, xml, hierarchyid
2.设计表 对于具体的某个表,在创建之前,需要确定表的下列特征 ■①表中要包含的数据的类型。 ②表中的列数,每列中数据的类型和长度(如果必要)。 ■③哪些列允许为空值。 ■④是否要使用以及何处使用约束、默认设置和规则 ■⑤所需索引的类型,哪里需要索引,哪些列是主键,哪些 是外键 表的命名也采用 Pascal命名规则,应以完整单词命名,避 免使用缩写
◼ 2.设计表 ◼ 对于具体的某个表,在创建之前,需要确定表的下列特征 : ◼ ① 表中要包含的数据的类型。 ◼ ② 表中的列数,每列中数据的类型和长度(如果必要)。 ◼ ③ 哪些列允许为空值。 ◼ ④ 是否要使用以及何处使用约束、默认设置和规则。 ◼ ⑤ 所需索引的类型,哪里需要索引,哪些列是主键,哪些 是外键。 ◼ 表的命名也采用Pascal命名规则,应以完整单词命名,避 免使用缩写