本系统主旨为培训学生.net开发技能,详细演示内容请参看:第一章 建立项目。
数据库基础
发布日期:2005年9月21日|更新日期:2005年10月15日
部分内容来源于网络,京胜世纪整理
摘要:本文讲述数据库基本知识。
本页内容:
数据库的基本概念
数据库管理系统
SQLSERVER 2000 简介
从身边的例子了解数据库
数据库系统概述
数据库系统的特点及数据库描述
我们经常会使用通讯录和同学或朋友联系,通讯录就是一种经常使用的简单的数据库。通讯录一般包含姓名、地址、电话号码和E-mail地址等项目。

它们可以按照一种顺序(如姓氏的拼音字母)来排列,从而可以很容易地找到某个人的信息。 而一个城市的电话簿是一个更大的数据库例子。
运用数据库系统提供的应用程序,将通讯录、电话簿的数据,以一定的结构录入数据库, 并用数据库系统管理这些信息。这是数据库管理系统的功能,计算机数据库管理系统具有强 大的管理功能,为用户使用数据库提供了方便,它可以使用数百种方式来重新组织数据和查 找信息。例如我们可以将一个通讯录的内容生成一个数据库,此后您就可以通过地址、名字 或是电话号码等各种方式来查找了,而不是仅仅依靠姓氏查找了。
数据、信息和数据处理
数据是一种物理符号序列,用来记录事物的情况。数据用类型和值来表示。不同的数据类 型记录的事物性质不一样。数据的概念在数据处理领域中不仅包括数字、字母、文字和其他特 殊字符组成的文本形式的数据,而且包括图形、图像、动画、影像、声音等多媒体数据。
信息是经过加工的数据。
所有的信息都是数据,而只有经过提炼和抽象之后具有使用价值的数据才能成为信息。经 过加工所得到的信息仍然以数据的形式出现,些时的数据是信息的载体,是人们认识信息的一 种媒介。有下述数据(王伟,男,1987,上海,高一,3,1.75,62),了解其语义的人能得到 以下信息,王伟是一个高一(3)班的男学生,生于1987年,上海人,身高1.75米,体重62公斤。 而不了解其语义的人则无法解释其含义。
数据处理
数据处理是指对各种类型的数据进行收集、存储、分类、计算、加工、检索和传输的过程。 数据处理的目的就是根据人们的需要,从大量的数据中抽取出对于特定的人们来说是有意义、 有价值的数据,借以作为决策和行动的依据。数据处理通常也称为信息处理。比如:一个人的 出生日期的原始数据,经过与当前年份的相减可以得出年龄的二次数据,根据年龄和规定我们 可以判断出此人的退休年份。
数据库系统是由计算机软、硬件资源组成的系统,它实现了有组织地、动态地存储大量关联数据,方便多用户访问。
有效地组织数据,即对数据进行合理设计,以便计算机存取;
方便地将数据输入到计算机中;
根据用户的要求将数据从计算机中抽取出来。

数据共享性:
·所有用户可以同时存取数据;
·数据库不仅可以为当前的用户服务,也可以为将来的用户服务;
·可以使用多种语言完成与数据库的接口。
数据独立性:
·物理数据独立
·逻辑数据独立
减少数据冗余度
数据的一致性
数据库描述
·实体模型:客观事物在人们头脑中的反映
实体模型
·实体(Entity): 客观事物在信息世界中称为实体。实体可以是具体的,如一个学生,一本书,也可以是抽象的事件,如一些足球比赛。实体用类型(Type)和值(Value)表示,例如学生是一个实体,而具体的学生李明、王力是实体值。
·实体集(Entity Set): 性质相同的同类实体的集合称为实体集。如一班学生,一批书籍
·属性:实体有许多特性,每一特性在信息世界中都称为属性。属性用类型和值表示,例如学号、姓名、年龄是属性的类型,而具体的数值870101、王小艳、19是属性值。
一对一的关系:它表现为主表的每一条记录只与相关表中的一条记录相关联。例如:人事部门的人员表与劳资部门的工资表中的人的记录为一对一的关系。
一对多的关系:表现为主表中的每一条记录与相关表中的多条记录相关联。例如:学校的系别表中的系别,学生表中的学生是一对多的关系,一个系中有多个学生,一个学生只能在一个系就读。
多对多的关系:一个表中的多个记录在相关表中同样有多个记录与其匹配。例如:学生表和课程表的关系,是多对多的关系,一个学生可以选修多门课程,一门课程可以供多个学生选修。
数据模型:具有联系的相关数据按一定的方式组织排列,并构成一定的结构,这种结构即为数据模型
·字段(Field):对应实体的属性,也称数据项。
·记录(Record):字段的有序集合称为记录,它用来描述一个实体,是相应于这一实体的数据
·表(Table):同一类记录的集合
·关键字(Key):能唯一标识表中每一个记录的一个或多个字段的最小组合称为关键字。例如学生文件中,学号可以唯一地标识每个学生记录,所以学号是关键字。
常见数据模型
层次模型——层次数据库
关系模型——关系数据库
关系模型:用“二维表格”来表示实体及其联系。关系数据库采用关系模型作为数据的组织方式。关系数据库是对应于一个关系模型的所有关系的集合。它是一种以关系模型为基础存储数据以及用数字方法处理数据库组织的方法,是目前最为流行的一种数据组织形式。

二维表格中每一列中的元素是类型相同的数据
行和列的顺序可以任意
表中元素是不可再分的最小数据项
表中任意两行的记录不能完全相同,表中不允许有表。
需求分析
数据管理系统是一个实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。它通常由软件、数据库和数据管理员组成。其软件主要包括操作系统、各种宿主语言,实用程序以及数据库管理系统。数据库是依照某种数据模型组织起来并存放二级存储器中的数据集合。这些数据为多个应用服务,独立于具体的应用程序。数据库由数据库管理系统统一管理,数据的插入、修改和检索均要通过数据库管理系统进行。数据库管理系统是一种系统软件,它的主要功能是维护数据库并有效地访问数据库中任意部分数据。对数据库的维护包括保持数据的完整性、一致性和安全性。数据管理员负责创建、监控和维护整个数据库,使数据能被任何有权使用的人有效使用。
DBMS功能
·数据库定义功能
·数据库管理功能
·数据库建立和维护功能
·通信功能
DBMS组成
为数据库的建立、使用和维护而配置的软件称为数据库管理系统DBMS(DataBase Management System)。数据库管理系统利用了操作系统提供的输入/输出控制和文件访问功能,因此它需要在操作系统的支持下运行。

·数据定义语言DDL(Data Description Language) 及其翻译程序
·数据操纵语言DML(Data Manipulation Language)及其编译(或解释)程序
·数据库管理例行程序:系统运行控制程序、语言翻译处理程序和DBMS的公用程序
数据库、表的建立
数据库的规划

数据库中的表与我们日常生活中使用的表格类似 它也是由行 Row 和列 Column组成的。图 3-1 中黑底白字的部分称为行图 3-2 中黑底白字的部分称为列列由同类的信息组成每列又称为一个字段每列的标题称为字段名行包括了若干列信息项一行数据称为一个或一条记录它表达有一定意义的信息组合一个数据库表由一条或多条记录组成没有记录的表称为空表每个表中通常都有一个主关键字用于惟一地确定一条记录如图 3-1 中的 emp_id 列图 3-1 中的第一条记录即第一行数据所表达的信息为编号为 1001001 的员工叫张三性别男出生于 1968 年 2 月 14 日工作级别为 1 工作部门编号为 1001 受雇日期是 1998 年 8月2 日月工资是8000元。

例如:有如下表email_table
Name Email
................................................................
Bill Gates? billg@microsoft.com
president Clinton? president@whitehouse.com
Stephen Walther? swalther@somewhere.com
这个简单的表有两列(列也称为字段,域〕:Name和Email。有三行,每一行包含一组数据。一行中的数据组合在一起称为一条记录。
无论何时你向表中添加新数据,你就添加了一条新记录。一个数据表可以有几十个记录,也可以有几千甚至几十亿个记录。数据库很有可能包含几十个表,所有存储在你数据库中的信息都被存储在这些表中。当你考虑怎样把信息存储在数据库中时,你应该考虑怎样把它们存储在表中。
SQL的主要功能之一是实现数据库查询。当执行一个SQL查询时,通过使用包括逻辑运算符的查询条件,你可以得到一个记录列表。此时查询结果是来自一个或多个表。 SQL查询的句法非常简单。假设要在email_table 的表中得到Bill Gates的e_mail地址 ,可以使用下面的查询:
SELECT email from email_table WHERE name="Bill Gates"
这个简单的语句包括三部分:
·SELECT语句的第一部分指名要选取的列。在此例中,只有email列被选取。当执行时,只显示email列的值 billg@microsoft.com。
·SELECTT语句的第二部份指明要从哪个(些)表中查询数据。在此例中,要查询的表名为email_table 。
·最后,SELECT语句的WHERE子句指明要选择满足什么条件的记录。在此例中,查询条件为只有name列的值为Bill Gates 的记录才被选取。
SQL是Structured?Quevy?Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。SQL数据定义功能包括定义数据库、基本表、索引和视图。
SQL Server 是一个后台数据库管理系统 它功能强大 操作简便日益为广大数据库用户所喜爱 越来越多的开发工具提供了与 SQL Server的接口 了解和掌握 SQL Server 的功用 对于一个数据库开发管理人员来说非常必要。
用户可以通过开始菜单或快捷方式启动企业管理器启动后界面如图所示:

企业管理器的界面是一个标准的 Windows 界面由标题栏菜单栏工具条树窗口和任务对象窗口又称任务板组成。
企业管理器的菜单栏分为两层上一层是主菜单栏下一层是控制台菜单栏主菜单在程序运行的过程中是基本保持不变的控制台菜单栏中的菜单则是动态的随着所进行操作的不同而显示不同的菜单内容其中操作Action和查看View两个菜单是动态化最明显随着所进行操作的不同而显示不同的菜单项尤其是操作Action菜单它的菜单项与当时的快捷菜单的内容相同而工具Tols菜单的菜单项在使用企业管理器的过程中是保持不变的只是应操作的不同而启用或禁用不同的菜单项。 企业管理器的工具栏也是动态的 会随着所进行操作的不同而增加或减少图标。
在sqlserver中创建新表
方法一:在查询分析器中用 CREATE TABLE 命令创建表
1. 选择[开始]菜单,在[程序]菜单中选择“Microsoft Sql Server”,在弹出的菜单中选择“查询分析器”,它是用来创建查询和其它 SQL 脚本,并针对 SQL Server 数据库执行它们。

2. 在"SQL Server"框中输入数据库服务器的名称,若要选择本地服务器,请选择"local"。
3. 单击"SQL Server 身份验证"以使用 SQL Server 身份验证进行连接,输入密码后单击[确定]按钮。

4. 在工具栏中选择要创建表对应的数据库名称,把CREATE的语句粘贴在窗口右边的空白栏中(或者直接是空白栏中输入相应的SQL语句)