MYSQL经典基础教程课件.ppt

上传人:飞****9 文档编号:127987500 上传时间:2020-04-07 格式:PPT 页数:38 大小:270.51KB
返回 下载 相关 举报
MYSQL经典基础教程课件.ppt_第1页
第1页 / 共38页
MYSQL经典基础教程课件.ppt_第2页
第2页 / 共38页
MYSQL经典基础教程课件.ppt_第3页
第3页 / 共38页
MYSQL经典基础教程课件.ppt_第4页
第4页 / 共38页
MYSQL经典基础教程课件.ppt_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《MYSQL经典基础教程课件.ppt》由会员分享,可在线阅读,更多相关《MYSQL经典基础教程课件.ppt(38页珍藏版)》请在金锄头文库上搜索。

1、北京传智播客教育 SQL入门 北京传智播客教育 MySQL简介 数据库简介SQLServer Oracle MySQL DB2 SyBaseMySQL数据库的安装和配置使用命令行窗口连接MYSQL数据库mysql u用户名 p密码 北京传智播客教育 数据库服务器 数据库和表的关系 MySQL DB DB 表 表 表 Client 所谓安装数据库服务器 只是在机器上装了一个数据库管理程序 这个管理程序可以管理多个数据库 一般开发人员会针对每一个应用创建一个数据库 为保存应用中实体的数据 一般会在数据库创建多个表 以保存程序中实体的数据 数据库服务器 数据库和表的关系如图所示 北京传智播客教育 数

2、据在数据库中的存储方式 id 1name lisi age 23 User对象 User表 id 2name wang age 24 行 row 列 column 表的一行称之为一条记录表中一条记录对应一个java对象的数据 User对象 北京传智播客教育 创建数据库 CREATEDATABASE IFNOTEXISTS db name create specification create specification create specification DEFAULT CHARACTERSETcharset name DEFAULT COLLATEcollation name CHAR

3、ACTERSET 指定数据库采用的字符集COLLATE 指定数据库字符集的比较方式练习 创建一个名称为mydb1的数据库 创建一个使用utf 8字符集的mydb2数据库 创建一个使用utf 8字符集 并带校对规则的mydb3数据库 北京传智播客教育 查看 删除数据库 显示数据库语句 SHOWDATABASES显示数据库创建语句 SHOWCREATEDATABASEdb name数据库删除语句 DROPDATABASE IFEXISTS db name 练习 查看当前数据库服务器中的所有数据库查看前面创建的mydb2数据库的定义信息删除前面创建的mydb1数据库 北京传智播客教育 修改 备份 恢

4、复数据库 ALTERDATABASE IFNOTEXISTS db name alter specification alter specification alter specification DEFAULT CHARACTERSETcharset name DEFAULT COLLATEcollation name 备份数据库表中的数据mysqldump u用户名 p数据库名 文件名 sql恢复数据库Source文件名 sql 练习查看服务器中的数据库 并把其中某一个库的字符集修改为utf8 备份test库中的数据 并恢复 北京传智播客教育 创建表 基本语句 CREATETABLEtab

5、le name field1datatype field2datatype field3datatype characterset字符集collate校对规则field 指定列名datatype 指定列类型 注意 创建表时 要根据需保存的数据创建相应的列 并根据数据的类型定义相应的列类型 例 user对象idintnamestringpasswordstringbirthdaydate 注意 创建表前 要先使用usedb语句使用库 北京传智播客教育 MySQL常用数据类型 VARCHAR BLOB和TEXT类是变长类型 每个类型的存储需求取决于列值的实际长度 北京传智播客教育 创建表练习 创建

6、一个员工表 北京传智播客教育 修改表 使用ALTERTABLE语句追加 修改 或删除列的语法 ALTERTABLEtableADD columndatatype DEFAULTexpr columndatatype ALTERTABLEtableMODIFY columndatatype DEFAULTexpr columndatatype ALTERTABLEtableDROP column 修改表的名称 Renametable表名to新表名修改表的字符集 altertablestudentcharactersetutf8 北京传智播客教育 修改表 练习在上面员工表的基本上增加一个image

7、列 修改job列 使其长度为60 删除sex列 表名改为user 修改表的字符集为utf 8列名name修改为usernamealtertableuserchangecolumnnameusernamevarchar 20 北京传智播客教育 北京传智播客教育 数据库CRUD语句 Insert语句 增加数据 Update语句 更新数据 Delete语句 删除数据 Select语句 查找数据 北京传智播客教育 Insert语句 INSERTINTOtable column column VALUES value value 使用INSERT语句向表中插入数据 插入的数据应与字段的数据类型相同 数据

8、的大小应在列的规定范围内 例如 不能将一个长度为80的字符串加入到长度为40的列中 在values中列出的数据位置必须与被加入的列的排列位置相对应 字符和日期型数据应包含在单引号中 插入空值 不指定或insertintotablevalue null 北京传智播客教育 Insert语句练习 练习 使用insert语句向表中插入三个员工的信息 注意 字符和日期要包含在单引号中 showvariableslike character setcharacter set results gbk 北京传智播客教育 Update语句 UPDATEtbl nameSETcol name1 expr1 col

9、 name2 expr2 WHEREwhere definition 使用update语句修改表中数据 UPDATE语法可以用新值更新原有表行中的各列 SET子句指示要修改哪些列和要给予哪些值 WHERE子句指定应更新哪些行 如没有WHERE子句 则更新所有的行 北京传智播客教育 Update语句练习 练习 在上面创建的employee表中修改表中的纪录 要求将所有员工薪水修改为5000元 将姓名为 zs 的员工薪水修改为3000元 将姓名为 aaa 的员工薪水修改为4000元 job改为ccc 将wu的薪水在原有基础上增加1000元 北京传智播客教育 Delete语句 deletefromt

10、bl name WHEREwhere definition 使用delete语句删除表中数据 如果不使用where子句 将删除表中所有数据 Delete语句不能删除某一列的值 可使用update 使用delete语句仅删除记录 不删除表本身 如要删除表 使用droptable语句 同insert和update一样 从一个表中删除记录将引起其它表的参照完整性问题 在修改数据库数据时 头脑中应该始终不要忘记这个潜在的问题 删除表中数据也可使用TRUNCATETABLE语句 它和delete有所不同 参看mysql文档 北京传智播客教育 Delete语句练习 删除表中名称为 zs 的记录 删除表中所

11、有记录 使用truncate删除表中记录 北京传智播客教育 Select语句 1 SELECT DISTINCT column1 column2 column3 FROMtable Select指定查询哪些列的数据 column指定列名 号代表查询所有列 From指定查询哪张表 DISTINCT可选 指显示结果时 是否剔除重复数据 基本select语句 北京传智播客教育 Select语句 1 练习 查询表中所有学生的信息 查询表中所有学生的姓名和对应的英语成绩 过滤表中重复数据 北京传智播客教育 Select语句 SELECT column1 expression column2 expres

12、sion FROMtable 在select语句中可使用表达式对查询的列进行运算 在select语句中可使用as语句 SELECTcolumnas别名from表名 北京传智播客教育 Select语句 练习在所有学生分数上加10分特长分 统计每个学生的总分 使用别名表示学生分数 北京传智播客教育 Select语句 3 使用where子句 进行过滤查询 练习 查询姓名为wu的学生成绩查询英语成绩大于90分的同学查询总分大于200分的所有同学 北京传智播客教育 Select语句 在where子句中经常使用的运算符 Like语句中 代表零个或多个任意字符 代表一个字符 例first namelike

13、a 北京传智播客教育 Select语句 4 查询英语分数在80 90之间的同学 查询数学分数为89 90 91的同学 查询所有姓李的学生成绩 查询数学分 80 语文分 80的同学 北京传智播客教育 Select语句 SELECTcolumn1 column2 column3 FROMtable orderbycolumnasc desc Orderby指定排序的列 排序的列即可是表中的列名 也可以是select语句后指定的列名 Asc升序 Desc降序ORDERBY子句应位于SELECT语句的结尾 练习 对数学成绩排序后输出 对总分排序后输出 然后再按从高到低的顺序输出对姓李的学生成绩排序输出

14、 使用orderby子句排序查询结果 北京传智播客教育 合计函数 count Selectcount count 列名 fromtablename WHEREwhere definition 练习 统计一个班级共有多少学生 统计数学成绩大于90的学生有多少个 统计总分大于250的人数有多少 Count 列名 返回某一列 行的总数 北京传智播客教育 合计函数 SUM Selectsum 列名 sum 列名 fromtablename WHEREwhere definition 练习 统计一个班级数学总成绩 统计一个班级语文 英语 数学各科的总成绩统计一个班级语文 英语 数学的成绩总和统计一个班级

15、语文成绩平均分注意 sum仅对数值起作用 否则会报错 注意 对多列求和 号不能少 Sum函数返回满足where条件的行的和 北京传智播客教育 合计函数 AVG Selectsum 列名 sum 列名 fromtablename WHEREwhere definition 练习 求一个班级数学平均分 求一个班级总分平均分 AVG函数返回满足where条件的一列的平均值 北京传智播客教育 合计函数 MAX MIN Selectmax 列名 fromtablename WHEREwhere definition 练习 求班级最高分和最低分 数值范围在统计中特别有用 Max min函数返回满足wher

16、e条件的一列的最大 最小值 北京传智播客教育 Select语句 6 SELECTcolumn1 column2 column3 FROMtable groupbycolumn 练习 对订单表中商品归类后 显示每一类商品的总价 使用groupby子句对列进行分组 SELECTcolumn1 column2 column3 FROMtable groupbycolumnhaving 使用having子句过滤 练习 查询购买了几类商品 并且每类总价大于100的商品 Having和where均可实现过滤 但在having可以使用合计函数 having通常跟在groupby后 它作用于组 北京传智播客教育 时间日期相关函数 示例 selectaddtime 02 30 30 01 01 01 注意 字符串 时间日期的引号问题selectdate add entry date INTERVAL2year fromstudent 增加两年selectaddtime time 11 110 09 09 fromstudent 时间戳上增加 注意年后没有 北京传智播客教育 字符串相关函数 北京传智播客教

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号