欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    MySQL初学教程.docx

    • 资源ID:991065       资源大小:139.36KB        全文页数:28页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    MySQL初学教程.docx

    MySQL教程第一章概述目标:1. 了解MySQL是什么?2. 什么是关系数据库管理系统?3. RDBMS的术语有哪些?什么是数据库?数据库(DatabaSe)是按照数据结构来组织、存储和管理数据的仓库。每个数据库都有一个或多个不同的APl用于创建,访问,管理,搜索和复制所保存的数据。我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理的大数据量。什么是关系数据库管理系统?所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。RDBMS即关系数据库管理系统(ReIatiOnalDatabaseManagementSyStem)的特点:1 .数据以表格的形式出现2 .每行为各种记录名称3 .每列为记录名称所对应的数据域4 .许多的行和列组成一张表单5 .若干的表单组成databaseRDBMS术语在我们开始学习MySQL数据库前,让我们先了解下RDBMS的一些术语:数据库:数据库是一些关联表的集合。数据表:表是数据的矩阵。在数据库中的表看起来像一个简单的电子表格。歹U:一列(数据元素)包含了相同的数据,例如邮政编码的数据。行:一行(二元组,或记录)是一组相关的数据,例如一条用户订阅的数据。冗余:存储两倍数据,冗余降低了性能,但提高了数据的安全性。主键:主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键来查询数据。外键:外键用于关联两个表。复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引。索引:使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。类似于书籍的目录。参照完整性:参照的完整性要求关系中不允许引用不存在的实体。与实体完整性是关系模型必须满足的完整性约束条件,目的是保证数据的一致性。现在你知道MySQL是什么了,让我们去在线课堂,并开始我们的第一个练习O第二章MySQL数据库操作因为我们要处理大量的数据,所以需要一种方法来定义数据库,表等,并更有效地处理数据。另外,我们可以将数据转换成数据信息,所以就需要SQL来处理了。SQL代表结构化查询语言(StructuredQueryLanguage)0SQL是用于访问数据库的标准化语言。SQL语言包括以下几种:1 .数据定义语言包含定义数据库及其对象的语句,例如表,视图,触发器,存储过程等。2 .数据操作语言包含允许您更新和查询数据的语句。3 .数据控制语言允许授予用户权限访问数据库中特定数据的权限。在本教程中,会让大家快速掌握MySqI的基本知识,并轻松使用SQL语言来操作MySQL数据库。第1节连接数据库这里想要说的是,安装MySQL的方式有好几种。在本课程中,已经利用kubernetes(详情请参照k8s教程)生成了一个MySQL的pod,并开启了mysql服务,打开终端即默认进入到MySQL的容器中。这里已经将密码改为“123456”,在终端输入以下命令即可登陆到MySQL,如下图所示:mysql-uroot-p123456#-uroot表示用户为root-pl23456表示密码为123456rootnysql-0:/#mysql-uroot-p123456Warning:Usingapasswordonthecommandlineinterfacecanbeinsecure.WelcometotheMySQLmonitor.Commandsendwith;org.YourMySQLconnectionidis2Serverversion:5.6.31MySQLCommunityServer(GPL)Copyright(c)20,216,Oracleand/oritsaffiliates.Allrightsreserved.OracleisaregisteredtrademarkofOracleCorporationand/oritsaffiliates.Othernamesmaybetrademarksoftheirrespectiveowners.Type,help;,or,h'forhelp.Type,c'toclearthecurrentinputstatement.mysql>出现这一幕则表示你已经成功登录mysql,你可以看到一些其它信息,比如版本信息以及一些帮助命令。那么接下来就可以开始你的MySQL之旅啦!第2节创建数据库在上一小节中我们已经成功登陆到了mysql中,那么我们就需要使用SQL语句来操作数据库。(sql语句没对关键字的大小写做强制要求)在这一小节中会帮助大家查看有哪些数据库,怎么新建数据库以及怎么在各个数据库之间切换。首先查看mysql中包含哪些数据库。使用以下命令查看:showdatabases;#因为是查看所有数据库,所以这里使用的是databases,可以理解为复数,查看表格时也是同理。还有记住在最后加上分号表示结束语句。mysql>showdatabases;+-+IDatabaseIinforation-schemaImysqlIPerfOEanCJSChema+-+3 rowsinset(.sec)mysql>如图所示,可以看到mysql自带有三个数据库,现在我们要创建一个新的数据库。使用如下命令新建数据库:createdatabasetest;#格式为Createdatabase数据库名;mysql>createdatabasetest;QueryOK,1rowaffected(.1sec)mysql>showdatabases;+IDatabase+Iinfonnation_schemaImysqlIperforance-schemaItest一I+4 rowsinset(.lsec)mysql>可以看到在提交创建数据库的SQL语句后,提示的是“QueryOK,1rowaffected(0.01sec),表示SQL语句已经执行成功。再次使用查看数据库的命令,即可看到数据库test已经新建成功。当数据库太多的时候,你可能记不得当前使用的是哪个数据库。当然你可以查看数据库中有哪些表格来判断,但是我们可以使用以下命令来直接查看:selectdatabase();mysql>selectdatabase();Idatabase!)I+ItestI1rowinset(.0sec)mysql>从返回的信息可以很清晰的知道当前使用的数据库为test。假如我在使用test数据库后发现还需要使用其它数据库,那么肯定要想办法切换至指定数据库,然后再进行操作。现在我们来实现数据库之间的切换。usemysql;#切换数据库selectdatabase();#查看当前数据库mysql>usemysql;ReadingtableinformationforcompletionoftableandcolumnnamesYoucanturnoffthisfeaturetogetaquickerstartupwith-ADatabasechangedmysql>selectdatabase();Idatabase()+ImysqlI+1rowinset(.sec)mysql>执行切换数据库的SQL语句后,系统会在最后返回一句"Databasechanged",这表明数据库已经切换成功,再次使用查看当前数据库的命令可以看到已经成功切换。总结:数据库的操作其实就是一些逻辑语句,这个可以从SQL语句的关键字中看出。比如说新建数据库就是Createdatabasestest,查看数据库是Showdatabaseso所以说数据库的基础操作很简单,只需要记住逻辑关系以及一些引号,分号等细节,相信你也能快速入门。练习:自行创建几个数据库,然后在各个数据库之间进行切换;查看当前数据库;列出所有数据库;最后请大家思考一下删除数据库以及新建查看表格应该怎么完成?第3节删除数据库增删改查为数据库的基本操作,前面我们已经学会了怎么新建和查询数据库,那么怎么实现删除数据库呢?这里要提醒的是,删除数据库过程中,务必要十分谨慎,因为在执行删除命令后,所有数据将会消失。通过前面的学习,我们知道数据库操作其实就是一些逻辑语句的处理,那么删除数据库肯定有同学想到用delete关键字。这里要简单说一下delete和drop的区别(只从结构简单描述,之后还会用到truncat,也是和删除相关的关键字)。delete:只删除数据不删除表结构。drop:用于删除表,数据库的所有数据包括结构。这里我们可以看出区别,delete一般是删除表格里存储的数据,也就是所谓的清空数据,但是表格结构还在(表格属性还在,后面会详细讲解数据表的创建)。使用drop会删除所有包括结构,所以删除数据库的时候要使用drop命令。dropdatabasetest;#这里删除的数据库是上一小节新建的test数据库mysql>dropdatabasetest;QueryOK,rowsaffected(.1sec)mysql>showdatabases;+IDatabase+Iinfoation-schemaImysqlIperformance_schema+-+3rowsinset(O.sec)mysql>没报错就代表命令已经执行成功,再次列出所有数据库可以看到test数据库已经消失。总结:到这里就把最基本的数据库操作完成了,当然只有最基础的一些操作,也基本够平时使用了。若是想了解更多的操作,可以下来自己查找一些资料。练习:那么自己抛开教程,重头操作一遍,看看自己是否能快速、准确的操作MySQL数据库了。思考:删除数据库和删除表格有什么相同之处?第三章MySQL数据操作第1节数据类型在学习数据操作之前,我们要清楚数据都是放在表格中的,而表格中又以字段来区分各种数据,而且MySQL中定义数据字段的类型对你数据库的优化是非常重要的。这一小节先来学习了解一下MySQL的数据类型以及常用的基本类型。MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。数值类型:类型大小用途TINYINT1字节小整数值Smallint2字节大整数值INT4字节大整数值FLOAT4字节单精度,浮点数值DOUBLE8字节双精度,浮点数值日期和时间类型:类型大小用途DATE3字节日期值TIME3字节时间值或持续时间YEAR1字节年份值DATETIME8字节混合日期和时间值TIMESTAMP4字节混合日期和时间值,时间戳字符串类型:类型大小用途CHAR0-255字节定长字符串VARCHAR0-65535字节变长字符串TINYTEXT0-255字节短文本字符串TEXT0-65535字节长文本数据以上这些数据类型就是常用的类型,如果想要了解或用到其它类型,则可以通过一些资料了解。第2节创建数据表在学习新建数据表之前,我们可以思考一下需要哪些信息?SQL语句应该怎么写?以及每个属性后面应该跟上什么关键字?那么在这一小节中,你将会亲自解开这些问题。创建表格所需信息1表名2表字段名3定义每个表字段语法首先给出一个通用语法供大家参考:CREATETABLEtable_name(column_namecolumn_type);结构很清晰,就是逻辑关键字加上表名,后面跟上想要添加的属性以及对应的数据类型,这样就可以实现新建一个比较完整的表格。那么接下来我们根据实际情况来新建一个数据表。假设我们定义一个PeoPIe类的表格,其中包括姓名和年龄,其SQL语法如下:CREATETABLEpeople(idintprimarykeyauto_increment,namevarchar(20),ageint);mysql>CREATETABLEpeople(idintprimarykeyauto_increment,->namevarchar(2),->ageint);QueryOK,rowsaffected(0.05sec)现在大家应该对这种返回信息比较熟悉了,表示已经执行成功。可能大家会有疑问,为什么这里会多一个id字段,那这个字段又代表着什么含义,以及后面跟的关键字又有什么作用?那么马上我们来一一解释。这里的id只是一个普通的int类型字段,但是在加上primarykey后概念就不一样了。primarykey表示主键,在概述中提过RDBMS的一些术语,其中就包括主键,表示这个属性在这张表中不能重复。通俗的讲,这里的id就好比个人的身份证号码,通过身份证号就我们就可以知道这个人的所有基本信息。那么在查询people表中的数据时就可以通过id来查询每行信息。auto_increment表示自增长。Id作为主键,要保证每次插入的id号都不相同;但是如果数据太多的话,就有可能出现插入的id号与表格中某一行数据的id号一致。所以这里设置id为自增长,每插入一条数据就自行判断表格中最大的id号,然后加Io所以auto_increment只能用于主键。那么接下来我们来看一下people表格有没有新建成功,以及各个字段的信息是否正确。showtables;#查看当前数据库下的所有表格,格式和查看数据库一致mysql>CREATETABLEpeople(idint,->namevarchar(2),->ageint);QueryOK,rowsaffected(2.lsec)mysql>showtables;+ITables_in_ddd+Ipeople+1rowinset(.15sec)mysql>descpeople;#通过desc+表名查看表格结构,包括名称、类型、是否为空mysql>descpeople;III1Ift.丁rIFieldITypeINull_LIKey丁I丁IDefaultExtra|IidIint(ll)Inamevarchar(2)Iageint(ll)_1TINOIYESIYES_IPRIIIINULLIauto_inccementINULLIIInullIITTT3rowsinset(0.1sec)mysql>总结:创建数据表需要表名、字段名、字段类型,了解其它属性的含义,保证每张表都有唯一标识的主键。练习:新建一个图书表,其中包括书籍名称、作者、价格以及出版时间,考虑各个字段应该使用什么数据类型,主键应该用什么字段,是否应该加上其它一些属性。思考:1上面讲到了auto_increment等一些属性,那么以下属性分别表示什么含义?用在什么地方?notnull/nulKdefault、unique、binary2下一小节将要学习删除数据表,思考一下该怎么执行SQL语句?第3节删除数据表在前面提到过删除数据库,那么这一小节我们就来实现删除数据表。MySQL中删除数据表是非常容易操作的,但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失。以下为删除MySQL数据表的通用语法:DROPTABLEtable_name;#DROPTABLE表名mysql>DROPTABLEpeople;QueryOK,rowsaffected(.4sec)mysql>showtables;Emptyset(.sec)mysql>查询出来可以看到,people表已经删除成功。总结:这里的删除表指的是删除所有包括表结构,和删除数据库性质一样,所以这里使用drop命令。思考:下一小节将学习怎么向表格中插入数据,参照新建数据表的SQL语法,思考一下插入数据应该怎么实现?第4节插入数据这一小节将会学习向数据表中插入数据,SQL语句与新建数据表类似,只不过关键字不同。MySQL表中使用INSERTINTOSQL语句来插入数据。你可以通过mysql命令提示窗口中向数据表中插入数据。以下为向MySQL数据表插入数据通用的INSERTINTOSQL语法:INSERTINTOtable_name(fieldl,field2,.fieldN)VALUES(value1,value2,.valueN);如果数据是字符型,必须使用单引号或者双引号,z,value接下来我们将向第2小节中的people表中插入两条数据:INSERTINTOpeople(name,age)VALUES("xiaoming”,20);INSERTINTOpeople(name,age)VALUES("xiaohong”,22);mysql>INSERTIMTOPeOPle(name,age)VALUES(,xiaoming'420);QueryOK,1rowaffected(.2sec)mysql>INSERTINTOpeople(name,age)VALUES(,xiaohong',22);QueryOK,1rowaffected(.1sec)mysql>OK,数据已经成功插入到表格中。细心的同学可以看到在往PeOPIe中插入数据的时候并没有写id字段,那是因为在创表的时候设为了自增长,所以不用再插入id数据。总结:插入数据和新建表格结构类似,只不过将关键字换成了insertinto;而且在插入数据的时候需要加上字段名字,并且数据数量和类型要和字段对应。练习:在第2小节的图书表的基础上,往里插入数据,注意数据类型和顺序。思考:如果我在插入数据的时候没填字段会出现什么情况?那么是否为必须填写?如果字段设置了default属性之后又会出现什么情况?如何插入多条数据?第5节修改表结构在本教程中,您将了解并使用MySQLALTERTABLE语句来更改现有表结构(如添加或删除列,更改列属性,修改表名等)。MySQLALTERTABLE语句简介可以使用ALTERTABLE语句来更改现有表的结构。ALTERTABLE语句可用来添加列,删除列,更改列的数据类型,添加主键,重命名表等等。以下说明了ALTERTABLE语句语法:ALTERTABLEtable_nameactionl,action2,要更改现有表的结构:首先,在ALTERTABLE子句之后指定要更改的表名称。其次,列出一组要应用于该表的操作。操作可以是添加新列,添加主键,重命名表等任何操作。ALTERTABLE语句允许在单个ALTERTABLE语句中应用多个操作,每个操作由逗号(,)分隔。ALTERTABLE实例1修改表名通用语法:ALTERTABLEtestalter_tblRENAMETOalter_tbl;现在我们将people表改为person表:ALTERTABLEpeopleRENAMETOperson;mysql>ALTERTABLEpeopleRENAMETOperson;QueryOK,rowsaffected(.6sec)mysql>showtables;ITableS_in_ddd+Iperson+-+1rowinset(.sec)可以看出PeoPle表名已经成功更改,这里使用了RENAMETO,前面是oldname,后面跟的是newname02修改字段名通用语法:ALTERTABLEtable_nameCHANGEold_namenew_name;现在我们将字段age改为score:ALTERTABLEpersonCHANGEAGESCOREINT;mysql>ALTERTABLEpersonCHANGEagescoreINT;QueryOK,rowsaffected(0.28sec)Records:Duplicates:Warnings:mysql>descperson;Field+IType-+INull+IKey.4.+IDefault,.IExtraidIi11t(ll)十INOIPRIINULL十IautoincrementnameIvarchar(2)IYESIINULLIscoreImt(ll)IYESIINULLI-+-+十-+3rowsinset(0.0sec)可以看到字段名age已经更改为score,这里使用了CHANGE,后面依次跟上原字段名和新字段名;末尾加上INT指定新字段的数据类型为INT。若需要指定该字段为非空属性或者其它,则在最后加上对应属性。3添加列通用语法:ALTERTABLEtable_nameADD字段名称typeif_null;现在我们增加一个字段职位字段position:ALTERTABLEpersonADDpositionVARCHAR(20)NOTNULL;mysql>ALTERTABLEpersonADDpositionVARCHAR(2)Query0K,rowsaffected(.15sec)Records:Duplicates:Warnings:NOTNULL;mysql>descperson;-A_IL.4».4.IFieldITypeItNullIKeyIDefaultTIExtraI+一一一一一IidInameIscoreIpositionIint(ll)IIvarchar(2)Iint(ll)IIvarchar(20)YESYESrTIPRIIIIIIIINULLNULLNULLNULL十IIIIauto_incrementrIIII4rowsinrxset(.lsec)TT,十可以看到字段p。Sition已经添加成功。这里使用了ADD,后面跟上新字段名;末尾加上VARCHAR(20)指定新字段的数据类型为字符型长度为20;最后还指定该字段数据不能为空。4删除列通用语法:ALTERTABLEtable_nameDROP字段名;现在我们将字段position删除:ALTERTABLEpersonDROPposition;mysql>ALTERTABLEpersonDROPposition;QueryOK,rowsaffected(.llsec)Records:Duplicates:Warnings:0mysql>descperson;÷+IFieldITypeNullKeyDefaultExtra+IidIit(ll)INOIPRINULLauto_increment|Inamevarchar(2)YESNULLIscoreint(ll)YESNULL|+3rowsinset(.sec)可以看到字段position已经成功删除,这里使用了DRoP,表示删除表结构。后面要删除的字段名。5更改字段类型通用语法:ALTERTABLEtable_nameMODIFY字段名称typeif_null;现在我们将字段score的数据类型改为字符型并设置为NoTNULL:ALTERTABLEpersonMODIFYscoreVARCHAR(10)NOTNULL;mysql>ALTERTABLEpersonMIFYscoreVARCHAR(1)NOTNULL;QueryOK,5rowsaffected(.12sec)Records:5Duplicates:Warnings:mysql>descperson;+-+一+FieldITypeINullKeyIDefaultExtra*idIint(ll)INOIPRIINULLIauto_incrementnamevarchar(2)YESIINULLIscoreI+varchar(l)-+-NOI+I+.NULLI+-3rowsinset(.O1sec)可以看到字段SCore的数据类型已经更改为字符型。这里使用的是MoDIFY,后面依次跟上要修改的字段名;再加上想要修改的数据类型。总结:凡是对表结构进行修改的都使用ALTERTABLEtable_name关键字,再根据具体操作情况来决定使用什么关键字。练习:在第4小节的练习基础上,更改数据表的表名,增加一个字段“印刷次数”,修改字段“出版时间”为出版商(注意类型),最后任意删除一个字段。记住每次操作之后要查看一些实现效果。思考:这一小节学习了如何修改表结构,那么如果想要修改表数据又该如何实现呢?第四章MySQL数据查询第1节查询数据在本教程中,您将学习如何使用MySQLSELECT语句从表查询数据。MySQLSELECT语句简介使用SELECT语句从表或视图获取数据。表由行和列组成,如电子表格。通常,我们只希望看到子集行,列的子集或两者的组合。SELECT语句的结果称为结果集,它是行列表,每行由相同数量的列组成。我们来看一下SELECT语句的语法:SELECTcolumn_l,column_2,FROMtable_namewhereconditionsSELECT语句由以下列表中所述的几个子句组成:SELECT之后是逗号分隔列或星号(*)的列表,表示要返回所有列。FROM指定要查询数据的表或视图。WHERE过滤结果集中的行。语句中的SELECT和FROM语句是必须的,其他部分是可选的。(在随后的教程中将更详细地了解每个子句。在本教程中,我们将重点介绍SELECT语句的简单形式用法。)接下来我们用实例演示一下:SELECT*FROMpeople;#这里是查询PeOPIe表中的所有数据。*表示列出所有字段mysql>select*frompeople;+-+IidInameage+-+1 1IXiaoming2I2Ixiaohong22+-+-+2 rowsinset(.sec)mysql>表中是我们在前面插入的两条简单数据,已经全部查询出来了。现在我们开始尝试用where来过滤行以及查询出个别字段。SELECT*FROMpeopleWHEREid=l;mysql>SELECT*FROMpeopleWHEREid三l;+-+IidInameage+-+I1Ixiaoming2+-+1 rowinset(.sec)mysql>SELECT*FROMpeopleWHEREage>20;mysql>SELECT*FROMpeopleWHEREage>2;+-+IidInameage+-+I2Ixiaohong22+-+-+2 rowinset(,sec)mysql>SELECTnameFROMpeople;mysql>SELECTnameFROMpeople;+Iname+IXiaomingIxiaohong+3 rowsinset(.Osec)mysql>SELECTname,ageFROMpeopleWHEREage=22;mysql>SELECTname,ageFROMpeopleMEREage=22;+Inameage+-+Ixiaohong22+1 rowinset(0.0sec)mysql>在本教程中,您已经了解并熟悉了MySQLSELECT语句的用法,并通过SELECT语句从MySQL表中查询数据。现在再通过练习熟练:新建一张班级成员表,包括学号、姓名、年龄、住址、生口和班级号字段。其中学号作为主键,想想班级号都相同应该怎么处理?插入多条数据后,通过查询语句选出满足条件的所有数据(通过查询结果理解查询语句)。思考:当满足条件的数据太多,而我们只需要前几条的时候应该怎么处理?第2节UPDATE查询更新数据是使用数据库时最重要的任务之一。在本教程中,您将学习如何使用MySQLUPDATE语句来更新表中的数据。我们使用UPl)ATE语句来更新表中的现有数据。也可以使用UPDATE语句来更改表中单个行,一组行或所有行的列值。下面说明了MySQLUPDATE语句的语法:UPDATELOW,PRIORITYIGNOREtable_nameSETcolumn_namel=exprl,column_name2=expr2,.WHEREcondition;在上面UPDATE语句中:首先,在UPDATE关键字后面指定要更新数据的表名。其次,SET子句指定要修改的列和新值。要更新多个列,请使用以逗号分隔的列表。以字面值,表达式或子查询的形式在每列的赋值中来提供要设置的值。第三,使用WHERE子句中的条件指定要更新的行。WHERE子句是可选的。如果省略WHERE子句,则UPDATE语句将更新表中的所有行。请注意,WHERE子句非常重要,所以不应该忘记指定更新的条件。有时,您可能只想改变一行;但是,可能会忘记写上WHERE子句,导致意外更新表中的所有行。MySQL在UPDATE语句中支持两个修饰符。1.oTLPRIORITY修饰符指示UPDATE语句延迟更新,直到没有从表中读取数据的连接。LOwPRIORlTY对仅使用表级锁定的存储引擎(例如MylSAM,MERGE,MEMoRY)生效。即使发生错误,IGNORE修饰符也可以使UPDATE语句继续更新行。导致错误(如重复键冲突)的行不会更新。现在我们通过实例演示一下:+-+IidInameage+-+I1Ixiaoming2|I2Ixiaohong|22|+-+将PeOPle表格中“xiaoming”的年龄改为18:UPDATEpeopleSETage=18WHEREname三,xiaoming,;mysql>UPDATEpeopleSETage=18WHEREname="xiaoming,;Query0Kf1rowaffected(.01sec)Rowsmatched:1Changed:1Warnings:0mysql>mysql>SELECT*FROMpeople;+-+IidInameage+-+I1Ixiaoming18I2Ixiaohong22+-+2 rowsinset(.sec)可以看出年龄已经成功修改。注意字符类型的要加上引号(不区分单双)现在我们来练习修改表中某个字段的所有数据为同一数据。比如说我们将所有人的年龄都改为25:UPDATEpeopleSETage=25;mysql>UPDATEpeopleSETage=25;QueryOK.2rowsaffected(.1sec)Rowsmatched:2Changed:2Warnings:mysql>SELECT*FROMpeople;IidInameage+-+I1Ixiaoming25I2Ixiaohong25+-+3 rowsinset(.sec)可以看出因为我们没有加WHERE条件,所以这里就默认更新所有数据。总结:UPDATE可以明确修改某一行的某个字段的数据,也可以修改某一字段所有数据,具体根据自己的筛选条件来作修改。练习:在上一小节的练习基础上更新id=l的住址;更新所有同学的班级号为“一年级二班”;将id小于5的所有同学的年龄改为IOo思考:在这一小节我们只是针对某一字段的数据进行了更新,那么请思考一下,如果我想一次修改多个字段那么应该怎么处理?第3节DELETE语句在本教程中,您将学习如何使用MySQLDELETE语句从单个表中删除数据。MySQLDELETE语句介绍要从表中删除数据,请使用MySQLDELETE语句。下面说明了DELETE语句的语法:DELETEFROMtable_nameWHEREcondition;在上面查询语句中-首先,指定删除数据的表(table_name)。其次,使用条件来指定要在WHERE子句中删除的行记录。如果行匹配条件,这些行记录将被删除。请注意,WHERE子句是可选的。如果省略WHERE子句,DELETE语句将删除表中的所有行。除了从表中删除数据外,DELETE语句返回删除的行数。要删除表中的所有行,而不需要知道删除了多少行,那么应该使用TRUNCATETABLE语句来获得更好的执行性能。MySQLDELETE的例子我先往people表中插入了五条数据:name age +Xiaoming25xiaohong25zhangsan15IisiI23Iwangwu3+inset(O.sec)

    注意事项

    本文(MySQL初学教程.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开