《access和sqlserver数据库基础》由会员分享,可在线阅读,更多相关《access和sqlserver数据库基础(56页珍藏版)》请在金锄头文库上搜索。
1、第7章 Access和SQL Server数据库基础,本章内容:关系型数据库,Access 2003使用基础,SQL Server 2008使用基础,在Visual Studio中创建SQL Server数据库。 本章重点:SQL Server 2008使用基础,包括数据库和表的创建、常用T-SQL语句的使用、存储过程、数据库的分离和附加。,7.1 关系型数据库,1关系型数据库的分类 为了更有效地使用关系型数据库,通常将其设计为不同的类型,而且在具体创建数据库的过程中还应遵循一定的规则,以使数据库中的数据更便于查询和使用。 关系型数据库一般可分为两类:一类是桌面数据库,如Access、FoxP
2、ro、Excel等;另一类是客户-服务器数据库,如SQL Server、Oracle等。,2表、记录和字段 表(Table)由若干用于描述客观对象多个特征的记录(Record,也称为行Row)组成。表中每一列(Column)表示客观对象的同一特征,也称为字段(Field)。举例见表7-1、 表7-2和表7-3。,3关键字 关键字是表中某个或多个字段,可以是唯一的,也可以是非唯一的。唯一关键字可以指定为主关键字,用来唯一标识一个记录。例如,“学号”可以指定为主关键字(也称为“主键”),因为它唯一地标识了一个学生基本情况记录。 4索引 为了更快地访问数据,大多数数据库都使用关键字对表进行索引。也就
3、是按关键字对数据库进行排序,并建立一张索引表,每个索引输入项都指向该记录在数据库中的行。 5关系 数据库中可以包含多张表,表与表之间可以用不同的方式相互关联。这样做可以充分利用数据库中现有数据,减少数据的冗余。,7.2 常用数据库产品简介,1Microsoft SQL Server数据库管理系统 2Oracle数据库管理系统 3Microsoft Access数据库管理系统 4MySQL数据库管理系统,7.3 Access 2003使用基础,7.3.1 创建Access数据库 Access的数据库是一个容器,用于存储数据库应用系统的其他对象。Access数据库文件的扩展名是.mdb。创建一个A
4、ccess数据库,就创建了一个以扩展名为.mdb的文件,并存储了所有数据库子对象管理的细节。 【例7-1】 创建一个Student数据库。,7.3.2 Access表 1表结构 表结构主要包括:字段名称、数据类型和字段属性设置。 (1)字段名称 字段即表的列,字段名称即表的列名称。字段名称是用来标识列的。 字段名称可以是英文名称,也可以是汉语名称,但都得符合Access数据库对象命名的 规则: 字段名称可以包含164个字符。 字段名称可以包含字母、数字、汉字和空格,以及其他特殊符号(除了“.”、惊叹号“!”、方括号“ ”之外)。 字段名称不能使用前导空格或控制符(即ASCII码值为031的字符
5、)。 字段名称不能以空格字符开头。,(2)数据类型 可以根据不同字段的需要,选择合适的数据类型。Access提供了10种数据类型,见 表7-4。,(3)字段属性 字段属性不是必选的。字段属性分为两组:“常规”和“查阅”。不同的数据类型,每个分组的选项不一样。 “常规”属性(“常规”选项卡)。 常用的“常规”属性有以下几种。 字段大小 只有当字段的数据类型是文本和数字时,字段大小属性才可以设置。 如果是文本型字段,则字段大小用来设定文本的长度,取值在1255之间。默认值是50。 如果是数字型字段,则字段又可以选择多种子类型,见表7-5。,格式 “格式”属性用于对不同数据类型字段使用不同的设置,没
6、有默认值,见表7-6。,输入法模式 输入法模式属性仅针对文本数据类型的字段有效,有3个选项:随意、输入法开启、输入法关闭,分别表示:保持原汉字输入法状态、启动汉字输入法和关闭汉字输入法。默认值是输入法开启。,输入掩码 输入掩码属性可以使数据的输入变得更为容易,并且可以控制用户在文本框类型控件中的输入值。定义输入掩码属性需要用到多种字符,见表7-7。,标题 标题属性值用以取代字段名称在显示表中数据时显示的内容,也就是给字段名称起了个别名。没有默认值。 例如,若表的字段名称是“name”,它的标题属性值为“姓名”,则在显示记录时,该字段的显示名称为“姓名”。 默认值 默认值属性可以在用户没有输入数
7、据时,自动获取指定数据。没有默认值。 例如,性别字段可以设置默认值属性为“男”,当用户没有输入性别数据时,系统将自动赋值“男”。,有效性规则 有效性规则属性用于指定对输入到字段中的数据的特殊规定取值。如果输入的数据违反该规则,则会向用户提示出错信息,不允许用户继续操作。没有默认值。 例如,性别字段的有效性规则可以设置为:“=“男“ Or =“女“”。这样,用户只能在该字段中输入“男”或“女”,不能输入其他值。 有效性文本 当用户输入的数据违反有效性规则时,需要向用户提示有效性文本设置的信息。有效性文本属性和有效性规则属性原则上应该一起设置。没有默认值。 例如,性别字段的有效性文本可以设置为:“
8、性别只能是男或女“。如果用户输入的数据违反规则,则会向用户提示这个出错信息。,必填字段 必填字段属性取值只有“是”和“否”两个选项。若选择“是”,则表示该字段可以不输入任何数据;若选择“否”,则表示该字段必须输入数据。默认值为“否”。 允许空字符串 允许空字符串属性取值也只有“是”和“否”两个选项。若选择“是”,则表示该字段可以为空;若选择“否”,则表示该字段必须输入数据,不能为空。默认值为“是”。 索引 索引是数据库随机检索的常用手段,它实际上就是记录的关键字与其相应地址的对应表。使用索引可以加快查询速度,并能保证行的唯一性。若字段设置有索引属性,则记录将以该字段的升序或降序显示。 索引属性
9、取值有“无”、“有(有重复)”和“有(无重复)”3个选项。当选择“无”,则该字段没有索引;当选择“有(有重复)”,则在该字段创建一个非唯一性索引,即该字段取值可以重复;当选择“有(无重复)”,则在该字段创建一个唯一性索引,即该字段取值不可以重复。默认值是为“无”。,Unicode压缩 Unicode压缩属性取值也仅有“是”和“否”两个选项。当选择“是”,表示该字段可以存储和显示多种语言的文本;当选择“否”,表示该字段不能存储和显示多种语言的文本。默认值是为“是”。 小数位数 如果字段数据类型是数字,则有小数位数属性,可以让用户定义数字的小数的位数。当然了数字数据必须首先设置为单精度型或双精度型
10、,该属性才有意义。默认值是为“自动”。 “查阅”属性(“查询”选项卡)。 “查阅”属性用于对指定数据类型设定窗体显示控件类型。只有文本、数字、是/否这3种数据类型可以设定窗体显示控件类型。可以将这些数据类型的显示设定为文本框、列表框、组合框或复选框。,2创建表 3修改表结构 4设置主键 5向表中输入记录 6设置关系,7.4 SQL Server 2008使用基础,7.4.1 创建SQL Server数据库 1数据库文件 SQL Server 2008数据库有3种类型的文件。 (1)主数据文件(Primary) (2)二级数据文件(Secondary) (3)事务日志文件,2创建数据库 在SQL
11、 Server Management Studio中创建数据库主要有两种方式:一种是在对象资源管理器中创建数据库,另一种是在“查询窗口”中执行T-SQL语句创建数据库。 (1)在对象资源管理器中创建数据库 可以在对象资源管理器中的图形界面环境下创建数据库。 【例7-4】下面以创建名为TestDB数据库为例,介绍在SQL Server Management Studio中使用对象资源管理器创建数据库的过程。,创建数据库的T-SQL语句是CREATE DATABASE,其基本语法格式如下: CREATE DATABASE database_name ON PRIMARY ( NAME = logi
12、cal_file_name , FILENAME = os_file_name ) LOG ON ( NAME = logical_file_name , FILENAME = os_file_name ) ;,3删除数据库 执行删除数据库操作将从SQL Server实例中删除数据库,并删除该数据库使用的物理磁盘文件。不能删除系统数据库。 (1)在对象资源管理器中删除数据库 (2)在查询编辑器中用T-SQL语句删除数据库 基本语法格式如下: DROP DATABASE database_name ; 参数说明如下。 database_name:指定要删除的数据库的名称。 例如,要删除TestD
13、B数据库,使用下面代码: DROP DATABASE TestDB;,7.4.2 表的操作 1数据类型类别 SQL Server中的数据类型可以归纳为下列类别:精确数值、近似数值、日期和时间、字符串、Unicode字符串、二进制字符串及其他数据类型。 在SQL Server中,根据其存储特征不同,某些数据类型被指定为属于下列各组。 大值数据类型:varchar(max)、nvarchar(max)和varbinary(max)。 大型对象数据类型:text、ntext、image、varchar(max)、nvarchar(max)、varbinary(max)和xml。,2创建表 在当前打开
14、的数据库中创建表。 (1)在对象资源管理器中创建表 使用SQL Server Management Studio中的对象资源管理器创建表。,(2)在查询编辑器中用T-SQL语句创建表 创建表的T-SQL语句是CREATE TABLE,其基本语法格式如下: CREATE TABLE table_name ( column_name type_name PRIMARY KEY | UNIQUE NULL | NOT NULL , column_name type_name NULL | NOT NULL , ) ;,【例7-7】用T-SQL语句,在StudentDB数据库中按表7-2创建表Cour
15、se。 用T-SQL语句在StudentDB数据库中创建Course表的步骤如下。 在SQL Server Management Studio中,单击工具栏中的“新建查询”按钮,在右侧窗格中显示“查询分析器”。 在查询编辑器中输入如下代码: USE StudentDB -打开数据库StudentDB GO CREATE TABLE Course -表名 ( CourseID char(4) PRIMARY KEY NOT NULL , -课程编号,主键,非空 CourseName nchar(10) , -课程名 Period smallint , -学时 Credit smallint ,
16、-学分 ) ; GO 单击查询编辑器上方的“执行”按钮或按F5键,执行创建的表代码。 在对象资源管理器中可以看到,StudentDB数据库下已经创建的Course表。 单击查询编辑器右上角的“关闭”按钮 ,关闭查询编辑器。,3修改表 (1)修改表结构 在对象资源管理器中,右键单击需要修改表的表名,显示快捷菜单,如图7-31所示,从快捷菜单中执行“设计”命令,右侧窗格将显示表设计视图,可以像创建表一样输入表各列的属性。 (2)修改表名 在对象资源管理器中,右键单击需要修改表的表名,从快捷菜单中执行“重命名”命令,则该表名处出现插入点光标,允许输入新的表名。 4删除表 在“对象资源管理器”中,右键单击需要删除的表名,从快捷菜单中执行“删除”命令,将删除该表。,7.4.3 记录的操作 记录操作包括向表中插入新记录、修改记录和删除记录。 1通过表记录视图操作记录 2用T-SQL添加