SQL应用开发之1
从今天开始学习SQL 应用开发,从最基本的概念开始,此学习过程持续5章内容 10课时时间,其中基础课时5课每课1章,操作课5课,每课55分钟。
1。数据库基础:
数据库是开发人员必须掌握的技术之一,因为大多数应用系统都需要把数据进行存储、分类和检索。
使用数据库可以高效、条理分明地存储数据,使人们能够更加迅速和方便地管理数据,主要体现在:
a 可以结构化存储大量数据信息,方便用户进行有效的检索和访问。
b 可以有效地保持数据信息的一致性,完整性,降低数据冗余。
c 可以满足应用的共享和安全方面的需求。
d 数据库技术能够方便职能化的分析,产生新的有用的信息。
DBMS 数据库管理系统的发展史:
数据库系统从20世纪50年代萌芽,60年代中期产生,在短短的几十年中从第一代的网状、层次数据库,第二代的关系数据库,发展到第三代的以面向对象模型为主要特征的数据库系统。其中,数据库技术与网络通讯技术、人工智能技术、面向对象程序设计技术、并行计算技术等相互渗透,相互结合,成为当前数据库技术发展的主要特征。
萌芽阶段–文件系统
文件系统是数据库系统的初级阶段,出现在20世纪50-60年代,可以提供简单的数据共享和管理,但无法提供完整统一的管理和数据共享能力。由于它功能简单,均附属于操作系统, 并不成为独立的软件,可以把它视为数据库的原形, 而不是真正意义上的数据库系统
初级阶段–第一代数据库
自20世纪60年代起,第一代数据库系统相继问世,它们是层次模型与网状模型的数据库系统,他们为统一管理和共享数据提供了有力的支撑。这个时期,由于数据库系统的蓬勃发展,形成了著名的“数据库时代”,这个阶段的网状模型的数据库由于它的复杂、专用性,没有被广泛应用,而在层次模型数据库中,IBM公司的IMS(information management system 信息管理系统)层次模型数据库系统得到极大的发展
中级阶段–第二代数据库
20世纪70年代初,第二代数据库–关系型数据库开始萌芽,ORACLE就是当时应关系数据模型的出现,而成立的一家专门做数据库的公司。80年代初,IBM的关系数据库系统DB2问世,而ORACLE公司将Oracle移植到了桌面计算机上,这时,关系数据库逐渐取代层次模型数据库。
关系数据库系统使用结构化查询语言(SQL,Stuctured Query Language) 作为数据库定义语言和数据库操作语言,这种语言和普通的面向过程的语言以及面向对象的语言不同,它一诞生就成为关系数据库的标准语言,SQL语言使 关系数据库中的数据表查询可以用简单的,声明性的方式进行,大大简化了程序元的工作。
高级阶段–新一代数据库
在现实环境中,考虑到商业运用的目标,数据库生产厂商各自为数据库加入了一些提高效率和提高性能的功能,舍弃了一些不太现实的约束。比如这个阶段中Oracle加入了并行的元素,并开始向 关系-对象 型数据库变迁,这样的变迁,也慢慢形成了新一代数据库系统,并且 关系–对象 型数据库正在持续发展。
当今常用的数据库:
SQL Server 微软公司的数据库产品,1992年被移植到 Windows NT平台上,SQL Server2000主要版本如下:
企业版 SQL Server 2000 Enterprise Edition
标准版 SQL Server 2000 Standard Edition
另外针对特殊用户群体,还有5个特殊版本:
个人用户版 针对移动SQL用户
开发用户版 针对SQL数据开发人员
企业评估版 针对企业购买评估
CE用户版 针对Windows CE用户
桌面引擎版 针对无需管理功能的应用程序
oracle 是Oracle(甲骨文)公司的数据库产品 oracle数据库系统号称世界上最好的数据库系统,有很长历史,Oracle公司成立于1977年,最初就是专门数据库公司,为大中小型计算机提供数据库产品。
DB2时IBM公司的数据库产品,DB2数据库核心又称作DB2通用服务器,不但可以运行在多种操作系统上,而且根据相应平台进行了调整优化,能更好达到更好的性能。在全球500强企业中,超过80% 的企业使用过DB2作为数据库平台。
数据库基本概念:
实体(Entity):数据库概念中,实体是客观存在的,可以被描述的事物。
数据库存储中,每一行(row)实际上对应一个实体,这样的一行,在数据库中通常叫做一条记录(record)
表中每一个输入项,叫做列。没一列代表实体的一种属性。
表(Table):实体的集合,用来存储具体的数据的。
数据库:简单的说,数据库就是表的集合。通常数据库并不是简单存储这些实体的数据,还需要表达实体之间的关系。关系(RelationShip)的描述也是数据库的一部分。
数据库系统和数据库管理系统:
数据库管理系统(DBMS):是一种系统软件,由一个相互关联的数据的集合和一组用以访问这些数据的程序构成,这个数据集合通常称为数据库,其中包含了有用的数据信息,数据库管理系统的基本目标是要提供一个可以方便有效地存取数据信息的环境。
数据库管理系统的主要功能是维护数据库,并有效地访问数据库中各个部分的数据。
数据库系统(DBS):是一个实际可以运行的软件系统,可以对系统提供的数据进行存储、维护和应用。是由存储介质,处理对象和管理系统共同组成的集合体。通常由软件、数据库和数据库管理员组成。
数据库管理员(DBA):在数据库系统中负责创建、监控和维护整个数据库,使数据能被任何有权限使用的人有效使用。
数据冗余(Redundance):数据存在副本的现象就是数据冗余,减少数据冗余最常见的方法是分类存储。在数据库中通常允许有必要的冗余存在,以减少数据查找的复杂性,提高效率。
数据的完整性(Integrality):数据的完整性指数据库中数据的准确性。如果两个或更多的表由于其存储的信息而相互关联,那么只要修改其中一个表,与之相关的所有表都要作出相应的修改,如果不那么做,存储的数据就会不再准确,就是去了数据的完整性。
SQL Server2000企业版包括如下组件:
企业管理器,服务管理器,事件探察器,查询分析器,客户端网络实用工具,联机丛书。
企业管理器:是SQL server主要管理工具,可以执行以下操作:定义SQL server 组,注册管理不同的SQL Server服务。配置不同的SQL Server服务选项,创建管理所有的SQL Server数据库、对象、登陆、用户、权限,定义并执行所有SQL Server管理任务,管理和执行SQL Server 的复制、发布、数据转换服务等。
查询分析器:是用于设计和测试Transact-SQL语句、批处理和脚本,查询数据库中的对象和对象结构,管理统计和索引。
使用企业管理器:
建立注册:用于管理远程SQL Server,右击SQL Server组可以创建新组,也可以注册SQL Server,选择注册 新建SQL Server注册 在向导中选择服务器列表中的某个服务器,选择身份验证,选择属于哪个组,完成。注册成功后,可以象管理本机SQL Server一样管理远程的SQL Server服务。
建立登陆并赋予权限:使用SQL Server时通常需要某个用户登录到SQL Server,特别是多用户共用SQL Server的情况。
建立登陆步骤:在企业管理器的安全性节点下右击登陆选择 新建登陆 输入登陆名 验证方式(如果是SQL Server验证则需要输入密码)选择默认的数据库。确定并再次输入密码确认,创建登陆。
赋予权限:在要赋予权限的数据库下,选择并右击 用户 项,选择新建数据库用户,此时登陆名中显示刚才创建的登陆,在下方数据库成员中选择 Public 确定,该登陆就被添加到数据库的用户列表中。
在数据库用户列表中,选择并右击该登陆,选择所有任务-管理权限,在操作列表中选择 select、insert、update、delete项则该用户就有了对数据库的查询和操作权限了。
SQL Server安装完后,默认的超级管理员用户sa(Super Administrator) 密码空,注意修改此用户密码来增强数据库的安全性,使用的时候注意不要总以sa用户登录,保证数据库的安全性。
系统数据库:
SQL Server提供了4个系统数据库
1 Master 数据库,记录SQL Server系统的所有系统级别信息,包括所有的登陆帐户和系统配置设置,所有其它的数据库和数据库文件位置,SQL Server初始化信息。
2 Tempdb 数据库,保存所有的临时表和临时存储过程,Tempdb数据库在SQL Server每次启动的时候都重新创建。
3 Model 数据库,用作在系统上创建所有数据库的模版。
4 Msdb 数据库,提供SQL Server代理程序调度报警、作业以及记录操作时使用。
示例数据库:
SQL Server提供了2个示例数据库 Pubs和Northwind
Pubs 存储了一个虚构的图书出版公司的基本情况。
Northwind 包含了一个公司的销售数据,公司名为Northwind 是一个虚构的从事食品进出口业务的公司。
创建管理数据库:
数据库文件(Database File):是存放数据库数据和数据库对象的文件,一个数据库有一个或多个数据库文件,当有多个数据库文件时,又一个文件被定义为主数据库文件,扩展名为MDF用来存储数据库的启动信息数据,一个数据库只能有一个主文件,其他数据库文件被称为次数据库文件,扩展名为NDF。
事务日志(Transaction Log File):用来记录数据库的更新情况,在对数据库进行操作的时候,数据库中内容更改的操作信息都被记录在此文件中,事务日志文件扩展名为LDF,一个数据库可以有一个或者多个事务日志文件。
文件组(File Group):类似于文件夹,主要用于分配磁盘空间并进行管理,与数据库文件一样,也有主文件组(Primary File Group)和次文件组(Secondary File Group)
在企业管理器中,的数据库快捷菜单中选择 新建数据库 弹出的对话框中 输入数据库的名字,选择数据文件选项卡,进行文件位置,文件大小的配置,数据文件默认名称为 数据库_DATA 初始大小为1M,可以进行修改
文件属性中,可以选择是否允许自动增长,如果不允许自动增长则数据库的最大容量就是其初始大小。数据文件增长的时候 可以配置增长方式,按百分比或者兆字节增长。和数据文件的大小限制。
选择事务日志选项卡,事务日志的文件名为 数据库名_LOG 初始大小为1M
收缩数据库:数据库使用一段时间后,经常会出现因数据删除而造成的数据库中空闲空间太多的情况,这个时候就需要减少分配的数据库文件和事务日志文件的磁盘空间,以免浪费空间。
右击要收缩的数据库,选择所有任务--收缩数据库可以进行数据库的收缩操作。
移动数据库:移动数据库需要先分离数据库,然后进行附加数据库操作。分离数据库是从服务器中移去逻辑数据库,但不会删除数据库文件,附加数据库会创建一个新的数据库并使用已有的数据库文件和事务日志文件中的数据。
右击要分离的数据库 选择所有任务–分离数据库,点击确定就把数据库从列表中移除,现在可以拷贝数据库的物理文件进行移动。
右击企业管理器中的数据库,选择所有任务–附加数据库,单击… 按钮选择数据文件,根据数据文件位置选择,单击确定,将根据数据文件中的信息把数据库添加到数据库列表中。
配置数据库选项:数据库除容量特性外,还有其他特性可以配置,在数据库的快捷菜单中选择 属性 命令 可以进行数据库的更改和配置,这个地方不但有前面所讲的数据文件和日志文件信息,还可以设置其选项和赋予用户操作的权限等。
各选项意义如下:
访问限制:若选择“db_owner、dbcreator或sysadmin 的成员” 则表示只有数据库所有者,数据库创建者和系统管理员才有权使用数据库。
若选择但用户,则表示数据库在同一时间只能提供一个用户使用。
只读:数据库只读,不能进行修改。
ANSI Null默认设置:允许在数据表列中输入Null值。
自动关闭:当数据库中无用户时, 自动关闭此数据库并将释放所有占用的资源,
自动收缩:定期对数据库进行检查,当数据文件或日志文件的未用空间超过大小的25%时,系统自动收缩数据库,使其未用空间等于25%。
删除数据库:
不再使用的数据库可以删除,以释放磁盘空间。
在数据库快捷菜单中选择删除命令,可以直接删除数据库,同时删除数据库的数据文件和日志文件。
<完>