网络数据库(河南农业大学)复习_第1页
网络数据库(河南农业大学)复习_第2页
网络数据库(河南农业大学)复习_第3页
网络数据库(河南农业大学)复习_第4页
网络数据库(河南农业大学)复习_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

题型一、名词解释,每题4分,共5题,总分20分。二、选择题,每题2分,共10题,总分20分。三、简答题,每题8分,共5题,总分40分。四、编程题,每题5分,共四题,总分20分。考试形式:笔试时间:2个小时1复习什么是数据库系统?数据库系统(DataBaseSystem)是由计算机硬件、数据库、数据库管理系统、数据库应用程序和用户组成,是一个计算机应用系统。2复习什么是数据库管理系统(DBMS)?数据库管理系统是专门用于管理数据库的系统软件。能够为数据库提供数据的定义、建立、维护、查询和统计等操作功能,并完成对数据完整性安全性进行控制的功能,是位于用户和操作系统之间的数据管理软件。3复习什么是网络数据库?网络数据库的定义:以后台数据库为基础的,配以一定的前台应用程序,通过浏览器完成数据存储、查询等操作的系统。浏览器Internet服务器数据库服务器提交表单对数据库服务器的查询要求查询结果用标准HTML语言反馈结果业务的表达4复习

B/S模式及其各自特点。B/S模式即Browser/Server浏览器/服务器模式,是一种以Web技术为基础的信息系统平台模式。其特点:(1)可以在任何地方进行操作而且不用安装任何专门的软件(2)系统的扩展也很容易(3)拥有稳定的技术平台(4)统一的客户机浏览器让网络和软件系统的应用拓展了空间(5)维护和升级方式简单(6)成本降低,选择更多。5复习

C/S模式及其特点。C/S模式即Client/Server客户/服务器模式。其特点:(1)服务(2)共享资源(3)不对称协议(4)定位透明性(5)混合与匹配(6)基于消息的交换(7)服务封装(8)可扩展性提交SQL语句查询结果返回前台客户端Client客户端应用程序服务器端Server数据库系统62层C/S模式应用程序安装在客户端,用户通过它直接访问数据库服务器用于少量用户、每用户所占资源不多的情况下3层C/S模式(目前多采用)应用程序在应用服务器上,用户通过它访问数据库服务器应用服务器上可同时运行多个程序,支持多用户ClientServerDatabase提交请求对数据库服务器的查询要求查询结果反馈结果业务的表达7网络数据库开发2/3/20238新C/SClientServerDatabase编写程序APP服务端程序数据库程序操作系统Android/iOS/WindowsLinux/WindowsLinux/Windows环境软件IE、Firefox、Chrome等Apache、Nginx、IISOracleMySQLSQLServer开发语言JavaObjective-C…HTMLCSSJavaScriptPHPJSPASP.NET传统服务端编程移动端前端后端数据库8复习

什么是概念模型,常见的数据模型有哪些?所谓概念模型,就是为正确、直观地反映客观事物及其联系,对所研究的信息世界建立的一个抽象的模型。常见的数据模型有:层次模型、网状模型、关系模型、面向对象模型9DB-Engines数据库排名2015年10月2/3/20231010复习

常用的关系数据库有哪些?特点是什么?1112复习

比较关系数据模型与非关系数据模型的优缺点。关系数据模型:使用表的概念来表示实体之间的联系,简单直观,结构清晰,容易理解;使用结构化查询语句,存储路径对用户透明,提供数据的独立性,简化程序员的工作,提高了效率;建立在严格的数学概念基础上,有坚实的理论基础。非关系数据模型:只能反映实体间的一对多联系,无法描述现实世界事物间的复杂关系;数据冗余度增加,查询不够灵活;插入和删除的限制较多;编写应用程序较复杂,应用程序开发效率较低。13复习

什么是LAMP,有什么特点。14152/3/202316操作系统Web服务器数据库开发语言LinuxNginxOraclePythonLinux/WinApacheTomcatWebLogicMySQLPHPJSPWindowsIISAccessSQLServerASPASP.NET几个名词:LAMP、WAMP、XAMP、LNMPWeb数据库(Web应用开发)四要素16网络数据库开发2/3/202317新C/SClientServerDatabase编写程序APP服务端程序数据库程序操作系统Android/iOS/WindowsLinux/WindowsLinux/Windows环境软件IE、Firefox、Chrome等Apache、Nginx、IISOracleMySQLSQLServer开发语言JavaObjective-C…HTMLCSSJavaScriptPHPJSPASP.NET传统服务端编程移动端前端后端数据库17复习

动态网页与静态网页有什么区别1819复习动态网页与数据库连接步骤1.建立数据库连接2.执行数据库查询3.关闭数据库连接20PHP连接MySQL用mysqli_connect()连接数据库$conn=mysqli_connect(‘数据库地址’,’用户名’,’口令’,’数据库名’)$conn=mysqli_connect('3','root','123456','phone');21PHP连接MySQL用mysqli_query()查询数据库$result=mysqli_query(database_connection,query);$query="Select*fromtelephonewherenamelike'%".$keyword."%'";$result=mysqli_query($conn,$query);22PHP连接MySQL用mysqli_close()关闭连接mysqli_close(database_connection);mysqli_close($conn);23复习SQL语句分为哪几类,各自主要的语句有哪些?SQL语言共分为四大类:1、数据查询语言DQL:完成数据查询。语句select2、数据操纵语言DML:用来操纵数据库中数据的命令。语句:insert、update、delete。3、数据定义语言DDL:用来建立数据库、数据库对象和定义列的命令。语句:create、alter、drop。4、数据控制语言DCL:用来控制数据库组件的存取许可、权限等的命令。语句:grant、deny、revoke等。2425复习写出常用的SQL语句(数据查询语言)写出查询telephone表中,所有姓名(name)中包含“教务”的记录的查询语句。26利用LIKE的查询【例】求姓名以字母S打头的学生:

SELECT*FROMStudentWHERESNameLIKE‘S%’;部分匹配检索查询,也称模糊查询,其谓词为:LIKE,NOTLIKE

一般形式为:<列名>LIKE<字符串常量>字符串常量中字符符的含义如下:%:表示可以和任意长的(长度可为零)字符串匹配。

-:表示可以和任意的单个字符匹配。所有的其它字符只代表自己。例如①SNoLIKE‘S-’:S#的长度为2个字符,第一个字符为S②SNameLIKE‘%ANG%’:包含ANG三个字符的姓名。③SNameNOTLIKE‘%ANG%‘:不包含三个字符的姓名。④SNameLIKE‘%P-‘:姓名长度至少是二个字符且倒数第二个字符必须是P。27PHP查询中使用变量Select*Fromtelephonewherenamelike'%".$keyword."%'Select*Fromtelephonewherenamelike'%教务%'28复习写出常用的SQL语句(数据查询语言)写出查询telephone表中,name为教务处按电话号码(phone)降序排列的查询语句SELECT*FROMtelephoneWHEREname=‘教务处'ORDERBYphoneDESC;29复习SQL语句分为哪几类,各自主要的语句有哪些?SQL语言共分为四大类:1、数据查询语言DQL:完成数据查询。语句select2、数据操纵语言DML:用来操纵数据库中数据的命令。语句:insert、update、delete。3、数据定义语言DDL:用来建立数据库、数据库对象和定义列的命令。语句:create、alter、drop。4、数据控制语言DCL:用来控制数据库组件的存取许可、权限等的命令。语句:grant、deny、revoke等。30复习写出常用的SQL语句(数据操纵语言)写出向telephone表中,插入两条记录的SQL语句。

insertintotelephonevalues(NULL,'教务处',NULL,'63558808'),(NULL,'教务科',NULL,'63558811');3132例:在mysql库的user表中插入name为test2,密码为123,其主机名的记录。命令如下:

INSERTINTOmysql.user(Host,User,Password)values('','test2',PASSWORD('123'));33复习写出常用的SQL语句(数据操纵语言)写出从mysql数据库的user表中,删除Host=‘’并且User=‘test2’的记录的SQL语句。DELETEFROMmysql.userwhereHost=''ANDUser='test2';3435复习写出常用的SQL语句(数据操纵语言)写出将telephone表中所有name为“jiaowuchu”的记录的name修改为“教务处”的语句。UPDATEtelephone SETname=‘教务处' wherename=‘jiaowuchu';36复习SQL语句分为哪几类,各自主要的语句有哪些?SQL语言共分为四大类:1、数据查询语言DQL:完成数据查询。语句select2、数据操纵语言DML:用来操纵数据库中数据的命令。语句:insert、update、delete。3、数据定义语言DDL:用来建立数据库、数据库对象和定义列的命令。语句:create、alter、drop。4、数据控制语言DCL:用来控制数据库组件的存取许可、权限等的命令。语句:grant、deny、revoke等。37复习写出常用的SQL语句(数据定义语言)写出创建表telephone,包含id,name,phone三个字段的sql语句,其中id为主键,不允许为空,自动增加。createtabletelephone(idintnotnullprimarykeyauto_increment,namechar(50),inphonechar(50),outphonechar(50));3839复习写出常用的SQL语句(数据定义语言)写出删除phone数据库中test表,及删除phone数据库的SQL语句。droptablephone.test;dropdatabasephone;。4041复习SQL语句分为哪几类,各自主要的语句有哪些?SQL语言共分为四大类:1、数据查询语言DQL:完成数据查询。语句select2、数据操纵语言DML:用来操纵数据库中数据的命令。语句:insert、update、delete。3、数据定义语言DDL:用来建立数据库、数据库对象和定义列的命令。语句:create、alter、drop。4、数据控制语言DCL:用来控制数据库组件的存取许可、权限等的命令。语句:grant、deny、revoke等。42复习写出常用的SQL语句(数据控制语言)给test1对phone数据库telephone表授予select权限;

grantselectonphone.telephoneto'test1'@''identifiedby'123';43复习写出常用的SQL语句(数据控制语言)收回test3用户在phone库上的所有权限revokeallprivilegesonphone.*from'test3'@'';4445复习什么是CMS,其优缺点是什么?CMS是ContentManagementSystem的缩写,意为"内容管理系统"。从商业门户网站的新闻系统到个人的Weblog都可以称作发布系统。CMS的优点:模板与代码分离。利用CMS可以不写代码做网站!提高网站开发速度。CMS的缺点:不够灵活,个性化需求仍离不开编写代码。2/3/20234646复习视图(View)索引(Index)存储过程(StoredProcedure)触发器(Trigger)47复习什么是视图,有什么特点?视图是从一个表、多个表或视图中导出的表,其结构和数据是建立在对表的查询基础上的。视图不是真实存在的基础表,而是一个虚拟表,视图所对应的数据并不实际地以视图结构存储在数据库中,而是存储在视图所引用的表中。

48复习写出创建视图的命令在phone数据库中创建一个视图phone_view1,从telephone表中产生,只保留单位名称和外线电话两个字段。

usephone;

createviewphone_view1

asselectname,outphonefromtelephone;49复习

什么是索引,有什么特点?索引是一种特殊的数据库结构,使创建在表上的并且对数据库表中一列或多列的值进行排序的一种结构。索引可以提高查询的速度,是提高数据库性能的重要方式。50复习写出创建索引的命令在已存在的表上创建索引usephone;createuniqueindexindex_idontelephone(id);51复习什么是存储过程,有什么特点?存储过程(StoredProcedure)是在大型数据库系统中,一组为了完成特定功能的SQL语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。

52存储过程(StoredProcedure)以一个名字存储在数据库中的、经过预编译的SQL语句集合。可以独立执行或通过应用程序的调用来执行。存储过程一旦创建,在服务器上即被编译,可在需要时执行多次,有效地提高执行效率。由SQL描述,具备强大的数据访问功能,可在一个过程中执行多条SQL语句支持控制流、参数和返回值,具备强大的过程处理能力像一般的程序设计语言一样,支持过程嵌套调用,可将复杂的过程处理简单化。53存储过程的特点将使用SQL编写的代码过程作为存储过程放在服务器端,通过客户应用程序发出调用请求,提供参数执行存储过程,存储过程通过返回值告知客户应用程序过程是否成功完成,从而实现数据访问的过程。这种数据访问模式优于在客户端直接执行SQL程序来完成数据访问过程。1.代码重用性存储过程是可重用的代码部件,创建后可以被应用程序重复调用。过程与应用程序之间的数据交互只是通过参数和返回值,这种黑盒子式的调用模式最大程度地减少了过程与应用程序之间的相互影响,从而提高了应用程序的可移植性。2.高速性存储过程同SQL批处理相比,因其在首次运行时,就利用查询优化器对其进行分析优化并将执行计划存储在过程高速缓存中,以后执行时不必重复这些工作而速度要快很多。54存储过程的特点1.代码重用性2.高速性3.网络流量小存储过程是被预编译好存储在服务器端的,当用户需要调用存储过程访问数据时,只需通过网络发出调用语句,这样避免每次访问数据时发送多条SQL语句,从而大大减少了网络的流量负担。4.安全性系统管理员为存储过程的执行赋予一定的权限,从而有效控制用户访问数据的权限,保证了数据的安全性。55CREATEPROCEDURE语句语法格式CREATEPROCEDURE过程名([过程参数[,...]])[特性...]过程体例1:创建简单存储过程createprocedureshow_tables()beginselect*fromtelephone;end56使用CALL语句调用存储过程。CALLsp_name([parameter[,…]]);例: callshow_tables;57什么是触发器,有什么特点?触发器是一种特殊类型的存储过程,用户不直接调用它,而是在对表或视图中数据进行UPDATE、INSERT或DELETE操作时自动执行。一个表或视图可以有多个触发器,每个触发器可以包含复杂的SQL语句。注:不论手工操作还是应用程序操作,在对表或视图中的数据作任何修改时,触发器自动激活。数据库表之间的引用完整性约束,除了可以采用主键和外键的对应约束来实现之外,还可以使用触发器。复习58创建触发器语法格式CREATETRIGGER

<触发器名>BEFORE|AFTER触发事件ON<表名>|<视图名>FOREACHROW执行语句例:telephone表中每增加一条记录,count表数据加1;每删除一条记录,count表数据减1。59复习MySQL数据库存储权限表userdbtable_privcolumns_privprocs_privhost60什么是数据库恢复当某种故障使数据库当前状态已不正确或不可靠时,把数据库恢复到故障发生前的某一已知的正确状态的过程数据库恢复是以数据备份为前提的,利用备份数据恢复数据库什么是数据库备份周期性或非周期性地将数据库中的数据进行复制,转储在联机或脱机设备中备份设备可以是磁盘、磁带、光盘、移动存储等复习61物理备份vs逻辑备份物理备份:将组成数据库的数据文件、配置文件等相关文件,复制一份到其他路径下保存。适合大型、重要、需快速恢复的场景。逻辑备份:保存数据库逻辑结构以及所存储的数据。优点是灵活,通用性强。缺点是恢复的速度性能较差。62联机备份vs脱机备份联机备份:也成为热(hot)备份,是指在数据库运行期间执行的备份操作。优点是备份不影响数据库服务的正常访问。脱机备份:与联机备份相对应,也成为(cold)冷备份,在数据库服务停止运行时进行的备份。优点是速度快,恢复简单。63本地备份vs远程备份本地备份指在MySQL服务运行的服务器上执行的备份。远程备份指在非本地服务器上执行的备份。生成的备份集不一定在远程。异地备份存储在异地的备份。64完整备份vs增量备份完整备份也叫全量备份(简称全备),指的是备份MySQL数据库中的所有数据。增量备份一般只包含指定时间点之后发生的修改。MySQL是基于二进制日志来实现的。65完整恢复vs增量恢复完整恢复是将备份集中所有数据进行恢复,将数据库恢复到备份时的状态。增量恢复是将数据库恢复到某个指定时间点前系统所做的修改。也叫时间点恢复。基于全备和二进制文件。66复习什么是数据库复制,实际应用中的作用:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论