ImageVerifierCode 换一换
格式:DOCX , 页数:41 ,大小:40.67KB ,
资源ID:8357581      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8357581.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(MySQL数据库技术教案.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

MySQL数据库技术教案.docx

1、MySQL数据库技术教案教案20112012学年第1学期课程名称MySQL数据库系(院、部)教研室(实验室)授课班级主讲教师职称使用教材MySQL实用教程二一一年八月教案课程名称MYSQL数据库应用授课教师授课班级授课时数1授课方式理论课授课重点、难点1。mysql 关系数据库简介2。 mysql安装授课内容、教具与时间分配1。MySQL数据库是从多关系型数据库产品中的一个,相比其他数据库而言,MySQL数据库可以称为目前运行速度最快的SQL语言。除此外还具有许多其他数据库所不具有的功能和选择。MySQL数据库是一种完全免费的产品,用户可以从网上直接下载,可以是个人,也可是商业用户,是不用支付

2、任何费用的一个数据库。MySQL数据库具有以下特点: 没有限制同时访问数据库的用户数量. 可以保存记录超过50,000,000条。 数据库系统的运行速度是目前所有产品中最快的。 可以简单、有效地进行用户权限的设置. 从MySQL数据库具有的以上特点可以看出,MySQL数据库是一个运行速度快、多线程、多用户和强大的SQL数据库服务器。MySQL可以运行在多种平台上,包括Windows NT、UNIX和Linux系统。MySQL是建立数据库驱动和动态网站的最佳数据库.PHP、MySQL和Apache是Linux平台网站的最佳组合。目前,国际上知名公司也开始把MySQL作为其数据库管理系统,这也充分

3、的证明了MySQL数据库的优越性能和广阔的发展前景。2。安装数据库系统 如何得到MySQL数据库呢?维护MySQL的主要网站是http:/www.MySQL。com.读者可以从这个网站下载MySQL数据库。在全球有许多MySQL数据库的镜像网站。可以选择一个就近的网站下载,这样可以比较快地得到MySQL数据库.中国用户可以从http:/www.MySQL。cn/下载。得到了MySQL数据库后,接下来进行安装,笔者就以Windows 2003为例来进行介绍。首先要把下载的MySQL数据库压缩文件解压到指定目录。数据库概述1。1 数据库理论基础 1.1.1 数据存储方式1.1.2 数据库泛型1。1

4、.3 数据库在开发中作用小结复习思考题参考书本次课程主要内容为 mysql 关系数据库简介 Mysql安装配置mysql入门很简单清华大学出版社Mysql数据库应用课程名称MYSQL数据库应用授课教师授课班级授课时数4授课方式理论课授课重点、难点1。Mysql数据类型授课内容、教具与时间分配1。 MySQL的数据类型 在MySQL中有如下几种数据类型: (1)数值型 MySQL提供了五种整型: TINYINT、SMALLINT、MEDIUMINT、INT和BIGINT,三种浮点类型: FLOAT、DOUBLE和DECIMAL。数值是诸如32 或153。4 这样的值.MySQL 支持科学表示法,

5、科学表示法由整数或浮点数后跟“e”或“E”、一个符号(“+”或“-”)和一个整数指数来表示。1.24E+12 和23。47e-1 都是合法的科学表示法表示的数。而1.24E12 不是合法的,因为指数前的符号未给出。 浮点数由整数部分、一个小数点和小数部分组成。整数部分和小数部分可以分别为空,但不能同时为空。 数值前可放一个负号“-”以表示负值。 (2)字符(串)型 类型名说明CHAR定长字符串VARCHAR可变长字符串TINYBLOB非常小的BLOB(二进制大对象)BLOB小BLOBMEDIUMBLOB中等的BLOBLONGBLOB大BLOBTINYTEXT非常小的文本串TEXT小文本串MED

6、IUMTEXT中等文本串LONGTEXT大文本串ENUM枚举;列可赋予某个枚举成员SET集合;列可赋予多个集合成员(3)日期和时间型 类型名说明DATE“YYYY-MMDD格式表示的日期值TIME“hh:mm:ss”格式表示的时间值DATETIME“YYYYMM-DD hh:mm:ss”格式TIMESTAMP“YYYYMMDDhhmmss”格式表示的时间戳值YEAR“YYYY”格式的年份值(4)NULL值 NULL表示未知值。比如填写表格中通讯地址不清楚留空不填写,这就是NULL值。小结复习思考题参考书本次课程主要内容为Mysql数据类型mysql入门很简单清华大学出版社Mysql数据库应用课

7、程名称数据库操作授课教师授课班级授课时数2授课方式理论课授课重点、难点1 创建数据库2 删除数据库 3 数据库存储引擎 3.1 MySQL存储引擎简介 3。2 InnoDB存储引擎 3.3 MyISAM存储引擎 3.4 MEMORY存储引擎 . 3。5 存储引擎的选择授课内容、教具与时间分配创建数据库(当然,数据库名”asb不能是已经存在的) mysql create database asb; 选用数据库,使其成为当前操作的数据库 mysql use asb; 成功选中后会有如下显示: Database changed 甚至可以在窗口命令登陆mysql数据库的时候直接选中要操作的数据库(当然

8、前提是asb数据库存在) binmysql asb u uesername -p Enter password:* 查看当前所操作的数据库名称 mysql select database(); 运行后结果如下: +-+ | database() | +-+ | asb +-+ 1 row in set (0.00 sec)数据库存储引擎:ISAMISAM是一个定义明确且历经时间考验的数据表格管理方法,它在设计之时就考虑到数据库被查询的次数要远大于更新的次数。因此,ISAM执行读取操作的速度很快,而且不占用大量的内存和存储资源。ISAM的两个主要不足之处在于,它不支持事务处理,也不能够容错:如果

9、你的硬盘崩溃了,那么数据文件就无法恢复了.如果你正在把ISAM用在关键任务应用程序里,那就必须经常备份你所有的实时数据,通过其复制特性,MySQL能够支持这样的备份应用程序。MyISAMMyISAM是MySQL的ISAM扩展格式和缺省的数据库引擎。除了提供ISAM里所没有的索引和字段管理的大量功能,MyISAM还使用一种表格锁定的机制,来优化多个并发的读写操作.其代价是你需要经常运行OPTIMIZE TABLE命令,来恢复被更新机制所浪费的空间。MyISAM还有一些有用的扩展,例如用来修复数据库文件的MyISAMChk工具和用来恢复浪费空间的MyISAMPack工具.MyISAM强调了快速读取

10、操作,这可能就是为什么MySQL受到了Web开发如此青睐的主要原因:在Web开发中你所进行的大量数据操作都是读取操作.所以,大多数虚拟主机提供商和Internet平台提供商(Internet Presence Provider,IPP)只允许使用MyISAM格式。HEAPHEAP允许只驻留在内存里的临时表格.驻留在内存里让HEAP要比ISAM和MyISAM都快,但是它所管理的数据是不稳定的,而且如果在关机之前没有进行保存,那么所有的数据都会丢失。在数据行被删除的时候,HEAP也不会浪费大量的空间。HEAP表格在你需要使用SELECT表达式来选择和操控数据的时候非常有用。要记住,在用完表格之后就

11、删除表格。让我再重复一遍:在你用完表格之后,不要忘记删除表格。InnoDB和Berkley DBInnoDB和Berkley DB(BDB)数据库引擎都是造就MySQL灵活性的技术的直接产品,这项技术就是MySQL+ API。在使用MySQL的时候,你所面对的每一个挑战几乎都源于ISAM和MyISAM数据库引擎不支持事务处理也不支持外来键。尽管要比ISAM和MyISAM引擎慢很多,但是InnoDB和BDB包括了对事务处理和外来键的支持,这两点都是前两个引擎所没有的。如前所述,如果你的设计需要这些特性中的一者或者两者,那你就要被迫使用后两个引擎中的一个了。小结复习思考题参考书本次课程主要内容为

12、Mysql数据库操作数据库存储引擎复习题目: 1。什么是存储引擎?如何选择? 2.mysql数据库操作方法mysql入门很简单清华大学出版社Mysql数据库应用课程名称数据库表操作授课教师授课班级授课时数4授课方式理论课授课重点、难点1. 创建表2. 修改表3. 删除表授课内容、教具与时间分配用CREATE TABLE 语句创建数据表用 CREATE TABLE 语句创建表。此语句的完整语法是相当复杂的,因为存在那么多的可选子句,但在实际中此语句的应用相当简单.如我们在第 1 章中使用的所有 CREATE TABLE 语句都不那么复杂。有意思的是,大多数复杂东西都是一些子句,这些子句MySQL

13、在分析后扔掉.参阅附录 1 可以看到这些复杂的东西。1、CREATE TABLE 语句的基本语法CREATE TABLE tbl_name(create_definition,.。) TYPE =table_typecreate_definition: col_name type NOT NULL NULL DEFAULT default_value AUTO_INCREMENTPRIMARY KEY用ALTER TABLE语句修改表的结构有时你可能需要改变一下现有表的结构,那么Alter Table语句将是你的合适选择。增加列alter table tbl_name add col_name

14、 type例如,给表增加一列weightmysqlalter table pet add weight int;删除列alter table tbl_name drop col_name 例如,删除列weight:mysqlalter table pet drop weight;改变列alter table tbl_name modify col_name type例如,改变weight的类型:mysql alter table pet modify weight samllint;另一种方法是:alter table tbl_name change old_col_name col_name

15、 type例如:mysql alter table pet change weight weight samllint;给列更名mysqlalter table pet change weight wei;给表更名alter table tbl_name rename new_tbl 例如,把pet表更名为animalmysqlalter table pet rename animal;改变表的类型另外,可以为列增加或删除索引等属性。用DROP TABLE 语句删除数据表DROP TABLE IF EXISTS tbl_name , tbl_name,。 DROP TABLE删除一个或多个数据

16、库表。所有表中的数据和表定义均被删除,故小心使用这个命令! 在MySQL 3.22或以后版本,你可以使用关键词IF EXISTS类避免不存在表的一个错误发生。 例如:mysqlUSE mytest; mysqlDROP TABLE guestbook;或者,也可以同时指定数据库和表: mysqlDROP TABLE mytest. guestbook;小结复习思考题参考书本节讲述了有关表的大部分操作,现在将所述内容总结如下:MySQL的表的三种类型如何创建表、删除表如何改变表的结构、名字复习题目: 1。数据表操作方法? 教材:mysql实用教程 mysql入门很简单清华大学出版社Mysql数据

17、库应用课程名称Mysql索引授课教师授课班级授课时数2授课方式理论课授课重点、难点Mysql索引授课内容、教具与时间分配索引是快速搜索的关键。MySQL索引的建立对于MySQL的高效运行是很重要的.下面介绍几种常见的MySQL索引类型。MySQL索引类型包括:(1)普通索引这是最基本的索引,它没有任何限制。它有以下几种创建方式:创建索引1.CREATEINDEXindexName ON mytable(username(length)); 如果是CHAR,VARCHAR类型,length可以小于字段实际长度;如果是BLOB和TEXT类型,必须指定 length,下同.修改表结构1.ALTER

18、mytable ADDINDEX indexName ON (username(length) 创建表的时候直接指定1.CREATETABLE mytable( 2.ID INTNOTNULL, 3.username VARCHAR(16) NOTNULL, 4.INDEX indexName (username(length) 5.); 删除索引的语法:1.DROPINDEX indexName ON mytable; (2)唯一索引它与前面的普通索引类似,不同的就是:索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。它有以下几种创建方式:创建索引1.CREATEUNI

19、QUEINDEX indexName ON mytable(username(length)) 修改表结构1.ALTERmytable ADDUNIQUE indexName ON (username(length) 创建表的时候直接指定1.CREATETABLE mytable( 2.ID INTNOTNULL, 3.username VARCHAR(16) NOTNULL, 4.UNIQUE indexName (username(length) 5.); (3)主键索引它是一种特殊的唯一索引,不允许有空值。一般是在建表的时候同时创建主键索引:1.CREATETABLE mytable(

20、2.ID INTNOTNULL, 3.username VARCHAR(16) NOTNULL, 4.PRIMARYKEY(ID) 5.); 当然也可以用 ALTER 命令。记住:一个表只能有一个主键。(4)组合索引为了形象地对比单列索引和组合索引,为表添加多个字段:1.CREATETABLE mytable( 2.ID INTNOTNULL, 3.username VARCHAR(16) NOTNULL, 4.city VARCHAR(50) NOTNULL, 5.age INTNOTNULL6.); 为了进一步榨取MySQL的效率,就要考虑建立组合索引。就是将 name, city, ag

21、e建到一个索引里:1.ALTERTABLE mytable ADDINDEX name_city_age (name(10),city,age); 建表时,usernname长度为 16,这里用 10。这是因为一般情况下名字的长度不会超过10,这样会加速索引查询速度,还会减少索引文件的大小,提高INSERT的更新速度。如果分别在 usernname,city,age上建立单列索引,让该表有3个单列索引,查询时和上述的组合索引效率也会大不一样,远远低于我们的组合索引。虽然此时有了三个索引,但MySQL只能用到其中的那个它认为似乎是最有效率的单列索引。建立这样的组合索引,其实是相当于分别建立了下面

22、三组组合索引:1.usernname,city,age 2.usernname,city 3.usernname 为什么没有 city,age这样的组合索引呢?这是因为MySQL组合索引“最左前缀的结果。简单的理解就是只从最左面的开始组合。并不是只要包含这三列的查询都会用到该组合索引,下面的几个SQL就会用到这个组合索引:1.SELECT FROM mytable WHREE username=”adminAND city=”郑州”2.SELECT FROM mytable WHREE username=admin而下面几个则不会用到:1.SELECT * FROM mytable WHREE

23、 age=20 AND city=郑州2.SELECT FROM mytable WHREE city=”郑州(5)建立索引的时机到这里我们已经学会了建立索引,那么我们需要在什么情况下建立索引呢?一般来说,在WHERE和JOIN中出现的列需要建立索引,但也不完全如此,因为MySQL只对,=,BETWEEN,IN,以及某些时候的LIKE才会使用索引.例如:1.SELECT t.Name2.FROM mytable t LEFTJOIN mytable m 3.ON t.Name=m。username WHERE m.age=20 AND m。city=郑州此时就需要对city和age建立索引,由

24、于mytable表的userame也出现在了JOIN子句中,也有对它建立索引的必要.刚才提到只有某些时候的LIKE才需建立索引。因为在以通配符%和_开头作查询时,MySQL不会使用索引。例如下句会使用索引:1.SELECT * FROM mytable WHERE username likeadmin而下句就不会使用:1.SELECT * FROM mytable WHEREt Namelikeadmin因此,在使用LIKE时应注意以上的区别。(6)索引的不足之处上面都在说使用索引的好处,但过多的使用索引将会造成滥用。因此索引也会有它的缺点:虽然索引大大提高了查询速度,同时却会降低更新表的速度

25、,如对表进行INSERT、UPDATE和DELETE.因为更新表时,MySQL不仅要保存数据,还要保存一下索引文件.建立索引会占用磁盘空间的索引文件。一般情况这个问题不太严重,但如果你在一个大表上创建了多种组合索引,索引文件的会膨胀很快。索引只是提高效率的一个因素,如果你的MySQL有大数据量的表,就需要花时间研究建立最优秀的索引,或优化查询语句。(7)使用索引的注意事项使用索引时,有以下一些技巧和注意事项:索引不会包含有NULL值的列只要列中包含有NULL值都将不会被包含在索引中,复合索引中只要有一列含有NULL值,那么这一列对于此复合索引就是无效的.所以我们在数据库设计时不要让字段的默认值

26、为NULL。使用短索引对串列进行索引,如果可能应该指定一个前缀长度。例如,如果有一个CHAR(255)的列,如果在前10个或20个字符内,多数值是惟一的,那么就不要对整个列进行索引。短索引不仅可以提高查询速度而且可以节省磁盘空间和I/O操作。索引列排序MySQL查询只使用一个索引,因此如果where子句中已经使用了索引的话,那么order by中的列是不会使用索引的.因此数据库默认排序可以符合要求的情况下不要使用排序操作;尽量不要包含多个列的排序,如果需要最好给这些列创建复合索引.like语句操作一般情况下不鼓励使用like操作,如果非使用不可,如何使用也是一个问题。like “aaa%” 不

27、会使用索引而like “aaa”可以使用索引。不要在列上进行运算1.select * from users whereYEAR(adddate)2007; 将在每个行上进行运算,这将导致索引失效而进行全表扫描,因此我们可以改成1.select * from users where adddate200701-01; 不使用NOT IN和操作以上,就对其中MySQL索引类型进行了介绍。小结复习思考题参考书教材:mysql实用教程 mysql入门很简单清华大学出版社Mysql数据库应用课程名称视图授课教师授课班级授课时数4授课方式理论课授课重点、难点创建视图、修改视图和删除视图授课内容、教具与时间

28、分配一视图概述视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在.行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。二创建视图-CREATE VIEW1。语法CREATE OR REPLACE ALGORITHM = UNDEFINED | MERGE | TEMPTABLE VIEW db_name。view_name (column_list) AS select_statement WITH CASCADED LOCAL CHECK OPTION通过该语句可以创建视图,若给定了OR R

29、EPLACE,则表示当已具有同名的视图时,将覆盖原视图。select_statement是一个查询语句,这个查询语句可从表或其它的视图中查询.视图属于数据库,因此需要指定数据库的名称,若未指定时,表示在当前的数据库创建新视图。表和数据库共享数据库中相同的名称空间,因此,数据库不能包含相同名称的表和视图,并且,视图的列名也不能重复.3.注意事项创建视图存在如下注意事项:(1)运行创建视图的语句需要用户具有创建视图(CRATE VIEW)的权限,若加了OR REPLACE时,还需要用户具有删除视图(DROP VIEW)的权限;(2)SELECT语句不能包含FROM子句中的子查询;(3)SELECT语句不能引用系统或用户变量;(4)SELECT语句不能引用预处理语句参数;(5)在存储子程序内,定义不能引用子程序参数或局部变量;(6)在定义中引用的表或视图必须存在。但是,创建了视图后,能够舍弃定义引用的表或视图。要想检查视图定义是否存在这类问题,可使用CHECK TABLE语句;(7)在定义中不能引用TEMPORARY表,不能创建TEMPORARY视图;(8)在视图定义中命名的表必须已存在;(9)不能将触发程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1