版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库简介数据库简介1内容常用的几种数据库介绍1数据库基础理论234客户端配置
SQL语言的使用内容常用的几种数据库介绍1数据2常用的几种数据库介绍
目前,商品化的数据库管理系统以关系型数据库为主导产品,技术比较成熟。面向对象的数据库管理系统虽然技术先进,数据库易于开发、维护,但尚未有成熟的产品。国际国内的主导关系型数据库管理系统有ORACLE、SQLSERVER、SYBASE、INFORMIX和DB2等。这些产品都支持多平台,如UNIX、VMS、WINDOWS,但支持的程度不一样。 其他小型的数据库有:Access、Foxpro等,这类数据库灵活易用,但不支持大型应用。
常用的几种数据库介绍3常用的几种数据库介绍Informix数据库 美国InfomixSoftware公司研制的关系型数据库管理系统。Informix有Informix-SE和Informix-Online两种版本。Oracle数据库 美国Orcale公司研制的一种关系型数据库管理系统,是一个协调服务器和用于支持任务决定型应用程序的开放型RDBMS。DB2数据库
IBM公司研制的一种关系型数据库系统。DB2主要应用于大型应用系统,具有较好的可伸缩性,可支持从大型机到单用户环境,应用于OS/2、Windows等平台下。常用的几种数据库介绍Infor4常用的几种数据库介绍SQLServer数据库
Microsoft公司推出的一种关系型数据库系统。主要用于Windows平台。Sybase数据库 美国Sybase公司研制的一种关系型数据库系统,是一种典型的UNIX或Windows平台上客户机/服务器环境下的大型数据库系统。Foxpro、Access数据库
Microsoft公司推出的微机数据库管理系统。它具有界面友好、易学易用、开发简单、接口灵活等特点。常用的几种数据库介绍SQLS5数据库基础理论5、游标2、数据字典1、数据库体系结构6、数据库设计3、索引4、存储过程数据库数据库基础理论5、游标2、数据6数据库基础理论—体系结构SQLServer中数据存储基本单位是页。
两种数据库的体系结构ORACLE数据库中的最小存储和处理单位是数据块。
数据库基础理论—体系结构SQL7数据库基础理论—体系结构在SQLServer中,页的大小为8KB。这意味着SQLServer数据库中每MB有128页。每页的开头是96字节的标头,用于存储有关页的系统信息。数据库基础理论—体系结构8数据库基础理论—体系结构在SQLServer上创建了一个数据库。该数据库包括一个主数据文件、一个用户定义文件组和一个日志文件。数据库基础理论—体系结构9数据库基础理论—体系结构Oracle系统体系结构是整个Oracle服务器系统的框架,是管理和应用Oracle数据服务器的基础和核心。Oracle系统体系结构由三部分组成:逻辑结构、物理结构和实例。其中,实例是维系物理结构和逻辑结构的核心。数据库基础理论—体系结构Ora10数据库基础理论—体系结构逻辑结构指是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合。物理结构主要包括数据文件、控制文件和重做日志文件等。实例是Oracle在内存中分配的一段区域SGA(系统全局区)和服务器后台进程的集合。Oracle数据库服务器就是数据库和实例的组合。数据库基础理论—体系结构逻辑结11数据库基础理论—体系结构体系结构三部分之间的关系数据库基础理论—体系结构体系结12数据库基础理论—体系结构Oracle10g数据库层次结构图
数据库基础理论—体系结构Ora13数据库基础理论—数据字典所有方案对象的定义,如:表、视图、索引、聚簇、同义词、序列、过程、函数、包、触发器等。数据字典中包括两部分信息:基表和提供给用户访问的视图。所有的数据字典都保存在SYSTEM表空间中。数据库基础理论—数据字典所有方14数据库基础理论—数据字典的系统表数据字典存储SqlServerSysobjectsSyscolumnsSysindexes……OracleDba_tablesDba_usersDba_indexs……数据库基础理论—数据字典的系统15数据库基础理论—索引索引会增加速度的原理数据库在执行一条Sql语句的时候,默认的方式是根据搜索条件进行全表扫描,遇到匹配条件的就加入搜索结果集合。如果我们对某一字段增加索引,查询时就会先去索引列表中一次定位到特定值的行数,大大减少遍历匹配的行数,所以能明显增加查询的速度。数据库基础理论—索引索引会增加16数据库基础理论—索引普通索引建立语句创建索引 CREATEINDEX<索引的名字>ONtablename(列的列表);
修改表时ALTERTABLEtablenameADDINDEX[索引的名字](列的列表);创建表时
CREATETABLEtablename([...],INDEX[索引的名字](列的列表));数据库基础理论—索引普通索引建17数据库基础理论—索引不适合建索引的地方如果每次都需要取到所有表记录,无论如何都必须进行全表扫描了,那么是否加索引也没有意义了。对非唯一的字段,例如“性别”这种大量重复值的字段,增加索引也没有什么意义。对于记录比较少的表,增加索引不会带来速度的优化反而浪费了存储空间,因为索引是需要存储空间的,而且有个致命缺点是对于update/insert/delete的每次执行,字段的索引都必须重新计算更新。数据库基础理论—索引不适合建索18数据库基础理论—存储过程什么是存储过程
存储过程是由流控制和sql语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,应用程序使用时只要调用即可。在Oracle中,若干个有联系的过程可以组合在一起构成程序包。数据库基础理论—存储过程什么是19数据库基础理论—存储过程优点执行速度比普通的SQL语句快
存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次。可保证数据的安全性和完整性。 通过存储过程可以使没有权限的用户在控制之下间接地存取数据库,从而保证数据的安全。同时,存储过程的执行是作为一个整体进行的,执行不成功时,会自动回滚,从而保证了数据的完整性。可将体现企业规则的运算程序放入数据库服务器中,以便集中控制,减少业务变更时的工作量。可以降低网络的通信量。数据库基础理论—存储过程优点20数据库基础理论—游标
游标是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果。
我们可以从某一结果集中逐一地读取一条记录。数据库基础理论—游标游标21数据库基础理论—游标声明游标 declaremy_cursorcursorkeysetforselect*frominfo删除游标资源 deallocatemy_cursor打开游标,在游标关闭或删除前都有效 openmy_cursor关闭游标 closemy_cursor定位到当前记录后一条 fetchnextfrommy_cursorinto@id,@name,@address select@idasid,@nameasname,@addressasaddress数据库基础理论—游标声明游标22数据库基础理论—数据库设计数据库的设计需要有经验的工程师在通盘考虑业务的需求后才能做好的。数据库设计的实用原则是:在数据冗余和处理速度之间找到合适的平衡点。冗余最大的威胁是数据的一致性,对于大系统,如果数据库设计有冗余,为了保持数据一致性给编程增加大量工作。数据库基础理论—数据库设计数据23数据库基础理论—数据库设计数据库设计原则三个范式
第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不可再分解;第二范式:2NF是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性;第三范式:3NF是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余。数据库基础理论—数据库设计数据24SQL语言的使用SQL3、创建和管理表4、视图2、数据控制语言5、控制用户权限1、Select语句的功能SQL语言的使用SQL3、创建25SQL语言的使用—Select语句基本
SELECT语句语法SELECT *|{[DISTINCT]column|expression[alias],...}FROM table;SELECT标识
选择哪些列。FROM标识从哪个表中选择。SQL语言的使用—Select26SQL语言的使用—Select语句基本
SELECT语句语法
SELECT*
FROMdepartmentswheredept_id=10and…;
SELECTdepartment_id,location_id
FROMdepartments;
SELECTlast_name,salary,salary+300
FROMemployees;SQL语言的使用—Select27SQL语言的使用—Select语句使用别名
SELECTlast_nameASname,commission_pctcommFROMemployees;……
SELECTlast_name"Name",salary*12"AnnualSalary"FROMemployees;SQL语言的使用—Select28SQL语言的使用—Select语句删除重复行
在
SELECT子句中使用关键字‘DISTINCT’删除重复行。SELECTDISTINCTdepartment_idFROMemployees;SQL语言的使用—Select29SQL语言的使用—数据控制语言数据控制语言DML可以在下列条件下执行:向表中插入数据修改现存数据删除现存数据事务是由完成若干项工作的DML语句组成的。SQL语言的使用—数据控制语言30SQL语言的使用—数据控制语言插入数据DEPARTMENTS新行向
DEPARMENTS
表中插入新的记录SQL语言的使用—数据控制语言31SQL语言的使用—数据控制语言插入数据INSERTINTO table[(column[,column...])]VALUES (value[,value...]);INSERTINTOdepartments(department_id,department_name,manager_id,location_id)VALUES(70,'PublicRelations',100,1700);1rowcreated.INSERTINTOsales_reps(id,name,salary,commission_pct)SELECTemployee_id,last_name,salary,commission_pctFROMemployeesWHEREjob_idLIKE'%REP%';4rowscreated.SQL语言的使用—数据控制语言32SQL语言的使用—数据控制语言更新数据
EMPLOYEES更新EMPLOYEES
表SQL语言的使用—数据控制语言33SQL语言的使用—数据控制语言更新数据UPDATE tableSETcolumn=value[,column=value,...][WHEREcondition];UPDATEemployeesSETdepartment_id=70WHEREemployee_id=113;1rowupdated.UPDATE copy_empSET department_id=110;22rowsupdated.SQL语言的使用—数据控制语言34SQL语言的使用—数据控制语言删除数据DELETEFROMdepartmentsWHEREdepartment_name='Finance';1rowdeleted.使用DELETE语句从表中删除数据。DELETE[FROM] table[WHERE condition];SQL语言的使用—数据控制语言35SQL语言的使用—创建和管理表常见的数据库对象对象 描述表基本的数据存储集合,由行和列组成。视图 从表中抽出的逻辑上相关的数据集合。序列 提供有规律的数值。索引 提高查询的效率同义词 给对象起别名SQL语言的使用—创建和管理表36SQL语言的使用—创建和管理表常见的数据库对象的管理语句 描述CREATETABLE
创建表ALTERTABLE
修改表结构DROPTABLE
删除表RENAME
重命名表TRUNCATE
删除表中的所有数据,并释放存储空间COMMENT
给对象加注释SQL语言的使用—创建和管理表37SQL语言的使用—视图表EMPLOYEES:SQL语言的使用—视图表EMP38SQL语言的使用—视图为什么使用视图控制数据访问简化查询数据独立性避免重复访问相同的数据SQL语言的使用—视图为什么使39SQL语言的使用—控制用户权限语句 功能CREATEUSER 创建用户(通常由DBA完成)GRANT 分配权限CREATEROLE 创建角色(通常由DBA完成)ALTERUSER 修改用户密码REVOKE 收回权限SQL语言的使用—控制用户权限40SQL语言的使用—控制用户权限数据库联接数据库联接使用户可以在本地访问远程数据库
本地数据库远程数据库SELECT*FROMemp@HQ_ACME.COM;HQ_ACME.COMdatabaseEMPTableSQL语言的使用—控制用户权限41客户端配置实例演示客户端配置实例演示42数据库简介数据库简介43内容常用的几种数据库介绍1数据库基础理论234客户端配置
SQL语言的使用内容常用的几种数据库介绍1数据44常用的几种数据库介绍
目前,商品化的数据库管理系统以关系型数据库为主导产品,技术比较成熟。面向对象的数据库管理系统虽然技术先进,数据库易于开发、维护,但尚未有成熟的产品。国际国内的主导关系型数据库管理系统有ORACLE、SQLSERVER、SYBASE、INFORMIX和DB2等。这些产品都支持多平台,如UNIX、VMS、WINDOWS,但支持的程度不一样。 其他小型的数据库有:Access、Foxpro等,这类数据库灵活易用,但不支持大型应用。
常用的几种数据库介绍45常用的几种数据库介绍Informix数据库 美国InfomixSoftware公司研制的关系型数据库管理系统。Informix有Informix-SE和Informix-Online两种版本。Oracle数据库 美国Orcale公司研制的一种关系型数据库管理系统,是一个协调服务器和用于支持任务决定型应用程序的开放型RDBMS。DB2数据库
IBM公司研制的一种关系型数据库系统。DB2主要应用于大型应用系统,具有较好的可伸缩性,可支持从大型机到单用户环境,应用于OS/2、Windows等平台下。常用的几种数据库介绍Infor46常用的几种数据库介绍SQLServer数据库
Microsoft公司推出的一种关系型数据库系统。主要用于Windows平台。Sybase数据库 美国Sybase公司研制的一种关系型数据库系统,是一种典型的UNIX或Windows平台上客户机/服务器环境下的大型数据库系统。Foxpro、Access数据库
Microsoft公司推出的微机数据库管理系统。它具有界面友好、易学易用、开发简单、接口灵活等特点。常用的几种数据库介绍SQLS47数据库基础理论5、游标2、数据字典1、数据库体系结构6、数据库设计3、索引4、存储过程数据库数据库基础理论5、游标2、数据48数据库基础理论—体系结构SQLServer中数据存储基本单位是页。
两种数据库的体系结构ORACLE数据库中的最小存储和处理单位是数据块。
数据库基础理论—体系结构SQL49数据库基础理论—体系结构在SQLServer中,页的大小为8KB。这意味着SQLServer数据库中每MB有128页。每页的开头是96字节的标头,用于存储有关页的系统信息。数据库基础理论—体系结构50数据库基础理论—体系结构在SQLServer上创建了一个数据库。该数据库包括一个主数据文件、一个用户定义文件组和一个日志文件。数据库基础理论—体系结构51数据库基础理论—体系结构Oracle系统体系结构是整个Oracle服务器系统的框架,是管理和应用Oracle数据服务器的基础和核心。Oracle系统体系结构由三部分组成:逻辑结构、物理结构和实例。其中,实例是维系物理结构和逻辑结构的核心。数据库基础理论—体系结构Ora52数据库基础理论—体系结构逻辑结构指是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合。物理结构主要包括数据文件、控制文件和重做日志文件等。实例是Oracle在内存中分配的一段区域SGA(系统全局区)和服务器后台进程的集合。Oracle数据库服务器就是数据库和实例的组合。数据库基础理论—体系结构逻辑结53数据库基础理论—体系结构体系结构三部分之间的关系数据库基础理论—体系结构体系结54数据库基础理论—体系结构Oracle10g数据库层次结构图
数据库基础理论—体系结构Ora55数据库基础理论—数据字典所有方案对象的定义,如:表、视图、索引、聚簇、同义词、序列、过程、函数、包、触发器等。数据字典中包括两部分信息:基表和提供给用户访问的视图。所有的数据字典都保存在SYSTEM表空间中。数据库基础理论—数据字典所有方56数据库基础理论—数据字典的系统表数据字典存储SqlServerSysobjectsSyscolumnsSysindexes……OracleDba_tablesDba_usersDba_indexs……数据库基础理论—数据字典的系统57数据库基础理论—索引索引会增加速度的原理数据库在执行一条Sql语句的时候,默认的方式是根据搜索条件进行全表扫描,遇到匹配条件的就加入搜索结果集合。如果我们对某一字段增加索引,查询时就会先去索引列表中一次定位到特定值的行数,大大减少遍历匹配的行数,所以能明显增加查询的速度。数据库基础理论—索引索引会增加58数据库基础理论—索引普通索引建立语句创建索引 CREATEINDEX<索引的名字>ONtablename(列的列表);
修改表时ALTERTABLEtablenameADDINDEX[索引的名字](列的列表);创建表时
CREATETABLEtablename([...],INDEX[索引的名字](列的列表));数据库基础理论—索引普通索引建59数据库基础理论—索引不适合建索引的地方如果每次都需要取到所有表记录,无论如何都必须进行全表扫描了,那么是否加索引也没有意义了。对非唯一的字段,例如“性别”这种大量重复值的字段,增加索引也没有什么意义。对于记录比较少的表,增加索引不会带来速度的优化反而浪费了存储空间,因为索引是需要存储空间的,而且有个致命缺点是对于update/insert/delete的每次执行,字段的索引都必须重新计算更新。数据库基础理论—索引不适合建索60数据库基础理论—存储过程什么是存储过程
存储过程是由流控制和sql语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,应用程序使用时只要调用即可。在Oracle中,若干个有联系的过程可以组合在一起构成程序包。数据库基础理论—存储过程什么是61数据库基础理论—存储过程优点执行速度比普通的SQL语句快
存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次。可保证数据的安全性和完整性。 通过存储过程可以使没有权限的用户在控制之下间接地存取数据库,从而保证数据的安全。同时,存储过程的执行是作为一个整体进行的,执行不成功时,会自动回滚,从而保证了数据的完整性。可将体现企业规则的运算程序放入数据库服务器中,以便集中控制,减少业务变更时的工作量。可以降低网络的通信量。数据库基础理论—存储过程优点62数据库基础理论—游标
游标是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果。
我们可以从某一结果集中逐一地读取一条记录。数据库基础理论—游标游标63数据库基础理论—游标声明游标 declaremy_cursorcursorkeysetforselect*frominfo删除游标资源 deallocatemy_cursor打开游标,在游标关闭或删除前都有效 openmy_cursor关闭游标 closemy_cursor定位到当前记录后一条 fetchnextfrommy_cursorinto@id,@name,@address select@idasid,@nameasname,@addressasaddress数据库基础理论—游标声明游标64数据库基础理论—数据库设计数据库的设计需要有经验的工程师在通盘考虑业务的需求后才能做好的。数据库设计的实用原则是:在数据冗余和处理速度之间找到合适的平衡点。冗余最大的威胁是数据的一致性,对于大系统,如果数据库设计有冗余,为了保持数据一致性给编程增加大量工作。数据库基础理论—数据库设计数据65数据库基础理论—数据库设计数据库设计原则三个范式
第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不可再分解;第二范式:2NF是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性;第三范式:3NF是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余。数据库基础理论—数据库设计数据66SQL语言的使用SQL3、创建和管理表4、视图2、数据控制语言5、控制用户权限1、Select语句的功能SQL语言的使用SQL3、创建67SQL语言的使用—Select语句基本
SELECT语句语法SELECT *|{[DISTINCT]column|expression[alias],...}FROM table;SELECT标识
选择哪些列。FROM标识从哪个表中选择。SQL语言的使用—Select68SQL语言的使用—Select语句基本
SELECT语句语法
SELECT*
FROMdepartmentswheredept_id=10and…;
SELECTdepartment_id,location_id
FROMdepartments;
SELECTlast_name,salary,salary+300
FROMemployees;SQL语言的使用—Select69SQL语言的使用—Select语句使用别名
SELECTlast_nameASname,commission_pctcommFROMemployees;……
SELECTlast_name"Name",salary*12"AnnualSalary"FROMemployees;SQL语言的使用—Select70SQL语言的使用—Select语句删除重复行
在
SELECT子句中使用关键字‘DISTINCT’删除重复行。SELECTDISTINCTdepartment_idFROMemployees;SQL语言的使用—Select71SQL语言的使用—数据控制语言数据控制语言DML可以在下列条件下执行:向表中插入数据修改现存数据删除现存数据事务是由完成若干项工作的DML语句组成的。SQL语言的使用—数据控制语言72SQL语言的使用—数据控制语言插入数据DEPARTMENTS新行向
DEPARMENTS
表中插入新的记录SQL语言的使用—数据控制语言73SQL语言的使用—数据控制语言插入数据INSERTINTO table[(column[,column...])]VALUES (value[,value...]);INSERTINTOdepartments(department_id,department_name,manager_id,location_id)VALUES(70,'PublicRelations',100,1700);1rowcreated.INSERTINTOsales_reps(id,name,salary,commission_pct)SELECTemployee_id,last_name,salary,commission_pctFROMemployeesWHEREjob_idLIKE'%REP%';4rowscreated.SQL语
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年驿路梨花课内测试题及答案
- 2026年北京申论行测试题及答案
- 2026年忠诚教育阶段测试题及答案
- 2026年反人性思维测试题及答案
- 2026年城管知识测试题及答案
- 2026年整套直女测试题及答案
- 家庭装修预算与施工方案
- 跨境电商服务信用承诺书(9篇)
- 2026年物流费用减免函(4篇)
- 数据整合分析与结果展示模板
- 青田县小溪流域仁宫至巨浦段综合治理工程项目环评报告
- 电力行业智能巡检体系建设实施方案
- 仪表联锁培训课件
- 职工退休及养老待遇证明书(6篇)
- 可再生能源法解读
- 殡仪服务员职业技能竞赛考试题(附答案)
- 车间材料损耗管理制度
- 实验动物咽拭子采集流程规范
- 《神奇的马达加斯加》课件
- 《城市道路人行道设施设置规范》
- 初一到初三英语单词表2182个带音标打印版
评论
0/150
提交评论