2020年3月25日星期三1题型一、名词解释,每题4分,共5题,总分20分。二、选择题,每题2分,共10题,总分20分。三、简答题,每题8分,共5题,总分40分。四、编程题,每题5分,共四题,总分20分。考试形式:笔试时间:2个小时2020年3月25日星期三2复习什么是数据库系统?数据库系统(DataBaseSystem)是由计算机硬件、数据库、数据库管理系统、数据库应用程序和用户组成,是一个计算机应用系统。2020年3月25日星期三3复习什么是数据库管理系统(DBMS)?数据库管理系统是专门用于管理数据库的系统软件。能够为数据库提供数据的定义、建立、维护、查询和统计等操作功能,并完成对数据完整性安全性进行控制的功能,是位于用户和操作系统之间的数据管理软件。2020年3月25日星期三4复习什么是网络数据库?网络数据库的定义:以后台数据库为基础的,配以一定的前台应用程序,通过浏览器完成数据存储、查询等操作的系统。浏览器Internet服务器数据库服务器提交表单对数据库服务器的查询要求查询结果用标准HTML语言反馈结果业务的表达2020年3月25日星期三5复习B/S模式及其各自特点。B/S模式即Browser/Server浏览器/服务器模式,是一种以Web技术为基础的信息系统平台模式。其特点:(1)可以在任何地方进行操作而且不用安装任何专门的软件(2)系统的扩展也很容易(3)拥有稳定的技术平台(4)统一的客户机浏览器让网络和软件系统的应用拓展了空间(5)维护和升级方式简单(6)成本降低,选择更多。2020年3月25日星期三6复习C/S模式及其特点。C/S模式即Client/Server客户/服务器模式。其特点:(1)服务(2)共享资源(3)不对称协议(4)定位透明性(5)混合与匹配(6)基于消息的交换(7)服务封装(8)可扩展性提交SQL语句查询结果返回前台客户端Client客户端应用程序服务器端Server数据库系统2020年3月25日星期三72层C/S模式应用程序安装在客户端,用户通过它直接访问数据库服务器用于少量用户、每用户所占资源不多的情况下3层C/S模式(目前多采用)应用程序在应用服务器上,用户通过它访问数据库服务器应用服务器上可同时运行多个程序,支持多用户ClientServerDatabase提交请求对数据库服务器的查询要求查询结果反馈结果业务的表达2020年3月25日星期三8网络数据库开发2020年3月25日星期三8新C/SClientServerDatabase编写程序APP服务端程序数据库程序操作系统Android/iOS/WindowsLinux/WindowsLinux/Windows环境软件IE、Firefox、Chrome等Apache、Nginx、IISOracleMySQLSQLServer开发语言JavaObjective-C…HTMLCSSJavaScriptPHPJSPASP.NET传统服务端编程移动端前端后端数据库2020年3月25日星期三9复习什么是概念模型,常见的数据模型有哪些?所谓概念模型,就是为正确、直观地反映客观事物及其联系,对所研究的信息世界建立的一个抽象的模型。常见的数据模型有:层次模型、网状模型、关系模型、面向对象模型2020年3月25日星期三10DB-Engines数据库排名2015年10月2020年3月25日星期三102020年3月25日星期三11复习常用的关系数据库有哪些?特点是什么?2020年3月25日星期三122020年3月25日星期三13复习比较关系数据模型与非关系数据模型的优缺点。关系数据模型:使用表的概念来表示实体之间的联系,简单直观,结构清晰,容易理解;使用结构化查询语句,存储路径对用户透明,提供数据的独立性,简化程序员的工作,提高了效率;建立在严格的数学概念基础上,有坚实的理论基础。非关系数据模型:只能反映实体间的一对多联系,无法描述现实世界事物间的复杂关系;数据冗余度增加,查询不够灵活;插入和删除的限制较多;编写应用程序较复杂,应用程序开发效率较低。2020年3月25日星期三14复习什么是LAMP,有什么特点。2020年3月25日星期三152020年3月25日星期三162020年3月25日星期三16操作系统Web服务器数据库开发语言LinuxNginxOraclePythonLinux/WinApacheTomcatWebLogicMySQLPHPJSPWindowsIISAccessSQLServerASPASP.NET几个名词:LAMP、WAMP、XAMP、LNMPWeb数据库(Web应用开发)四要素2020年3月25日星期三17网络数据库开发2020年3月25日星期三17新C/SClientServerDatabase编写程序APP服务端程序数据库程序操作系统Android/iOS/WindowsLinux/WindowsLinux/Windows环境软件IE、Firefox、Chrome等Apache、Nginx、IISOracleMySQLSQLServer开发语言JavaObjective-C…HTMLCSSJavaScriptPHPJSPASP.NET传统服务端编程移动端前端后端数据库2020年3月25日星期三18复习动态网页与静态网页有什么区别2020年3月25日星期三192020年3月25日星期三20复习动态网页与数据库连接步骤1.建立数据库连接2.执行数据库查询3.关闭数据库连接2020年3月25日星期三21PHP连接MySQL用mysqli_connect()连接数据库$conn=mysqli_connect(‘数据库地址’,’用户名’,’口令’,’数据库名’)$conn=mysqli_connect('172.31.0.83','root','123456','phone');2020年3月25日星期三22PHP连接MySQL用mysqli_query()查询数据库$result=mysqli_query(database_connection,query);$query=Select*fromtelephonewherenamelike'%.$keyword.%';$result=mysqli_query($conn,$query);2020年3月25日星期三23PHP连接MySQL用mysqli_close()关闭连接mysqli_close(database_connection);mysqli_close($conn);2020年3月25日星期三24复习SQL语句分为哪几类,各自主要的语句有哪些?SQL语言共分为四大类:1、数据查询语言DQL:完成数据查询。语句select2、数据操纵语言DML:用来操纵数据库中数据的命令。语句:insert、update、delete。3、数据定义语言DDL:用来建立数据库、数据库对象和定义列的命令。语句:create、alter、drop。4、数据控制语言DCL:用来控制数据库组件的存取许可、权限等的命令。语句:grant、deny、revoke等。2020年3月25日星期三252020年3月25日星期三26复习写出常用的SQL语句(数据查询语言)写出查询telephone表中,所有姓名(name)中包含“教务”的记录的查询语句。2020年3月25日星期三27利用LIKE的查询【例】求姓名以字母S打头的学生:SELECT*FROMStudentWHERESNameLIKE‘S%’;部分匹配检索查询,也称模糊查询,其谓词为:LIKE,NOTLIKE一般形式为:列名LIKE字符串常量字符串常量中字符符的含义如下:%:表示可以和任意长的(长度可为零)字符串匹配。-:表示可以和任意的单个字符匹配。所有的其它字符只代表自己。例如①SNoLIKE‘S-’:S#的长度为2个字符,第一个字符为S②SNameLIKE‘%ANG%’:包含ANG三个字符的姓名。③SNameNOTLIKE‘%ANG%‘:不包含三个字符的姓名。④SNameLIKE‘%P-‘:姓名长度至少是二个字符且倒数第二个字符必须是P。2020年3月25日星期三28PHP查询中使用变量Select*Fromtelephonewherenamelike'%.$keyword.%'Select*Fromtelephonewherenamelike'%教务%'2020年3月25日星期三29复习写出常用的SQL语句(数据查询语言)写出查询telephone表中,name为教务处按电话号码(phone)降序排列的查询语句SELECT*FROMtelephoneWHEREname=‘教务处'ORDERBYphoneDESC;2020年3月25日星期三30复习SQL语句分为哪几类,各自主要的语句有哪些?SQL语言共分为四大类:1、数据查询语言DQL:完成数据查询。语句select2、数据操纵语言DML:用来操纵数据库中数据的命令。语句:insert、update、delete。3、数据定义语言DDL:用来建立数据库、数据库对象和定义列的命令。语句:create、alter、drop。4、数据控制语言DCL:用来控制数据库组件的存取许可、权限等的命令。语句:grant、deny、revoke等。2020年3月25日星期三31复习写出常用的SQL语句(数据操纵语言)写出向telephone表中,插入两条记录的SQL语句。insertintotelephonevalues(NULL,'教务处',NULL,'63558808'),(NULL,'教务科',NULL,'63558811');2020年3月25日星期三322020年3月25日星期三33例:在mysql库的user表中插入name为test2,密码为123,其主机名127.0.0.1的记录。命令如下:INSERTINTOmysql.user(Host,User,Password)values('127.0.0.1','test2',PASSWORD('123'));2020年3月25日星期三34复习写出常用的SQL语句(数据操纵语言)写出从mysql数据库的user表中,删除Host=‘127.0.0.1’并且User=‘test2’的记录的SQL语句。DELETEFROMmysql.userwhereHost='127.0.0.1'ANDUser='test2';2020年3月25日星期三352020年3月25日星期三36复习写出常用的SQL语句(数据操纵语言)写出将telephone表中所有name为“jiaowuchu”的记录的name修改为“教务处”的语句。UPDATEtelephoneSETname=‘教务处'wherename=‘jiaowuchu';2020年3月25日星期三37复习SQL语句分为哪几类,各自主要的语句有哪些?SQL语言共分为四大类:1、数据查询语言DQL:完成数据查询。语句select2、数据操纵语言DML:用来操纵数据库中数据的命令。语句:insert、update、delete。3、数据定义语言DDL:用来建立数据库、数据库对象和定义列的命令。语句:create、alter、drop。4、数据控制语言DCL:用来控制数据库组件的存取许可、权限等的命令。语句:grant、deny、revoke等。2020年3月25日星期三38复习写出常用的SQL语句(数据定义语言)写出创建表telephone,包含id,name,phone三个字段的sql语句,其中id为主键,不允许为空,自动增加。createtabletelephone(idintnotnullprimarykeyauto_increment,namechar(50),inphonechar(50),outphonechar(50));2020年3月25日星期三392020年3月25日星期三40复习