MySQL讲解基础知识PPT课件_第1页
MySQL讲解基础知识PPT课件_第2页
MySQL讲解基础知识PPT课件_第3页
MySQL讲解基础知识PPT课件_第4页
MySQL讲解基础知识PPT课件_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

1、2021/3/91MySQL基础知识2021/3/92目录设计数据库1MySQL的介绍和安装2SQL语句实现增删改查3MySQL的应用42021/3/93层次模型面向对象模型网状模型关系模型数据库管理系统常用的数学模型 2021/3/94设计数据库 数据库(Database或DB)是存储、管理数据的容器。数据永远是数据库的核心。目前关系数据库管理系统已占据主导地位 。MySQL和Microsoft SQL Server2000也是基于关系模型的。它的主要特征是使用关系来表示实体以及实体之间的联系。E-R图设计的质量直接决定了关系数据库设计的质量。2021/3/950,n0,n选修包含学生学号姓

2、名联系方式.班级班级名所属院系教师工号姓名联系方式.课程课程名人数上限课程描述状态.选修成绩选修时间. 实体不是某一个具体事物,而是某一种类别所有事物的统称。 属性通常用于表示实体的某种特征,也可以使用属性表示实体间关系的特征实体属性属性实体和属性2021/3/960,n0,n选修包含学生学号姓名联系方式.班级班级名所属院系教师工号姓名联系方式.课程课程名人数上限课程描述状态.选修成绩选修时间. E-R图中的关系用于表示实体间存在的联系,在E-R图中,实体间的关系通常使用一条线段表示。 E-R图中实体间的关系是双向的。关系关系关系2021/3/971为E-R图中的每个实体建立一张表,实体命名应

3、唯一,实体型和联系的属性命名都应唯一。2为每张表定义一个主键(如果需要,可以向表添加一个没有实际意义的字 段作为该表的主键) 3增加外键表示一对多关系。4建立新表表示多对多关系。5为字段选择合适的数据类型。6定义约束条件(如果需要)。7评价关系的质量,并进行必要的改进。关系数据库设计2021/3/98开源MySQL源代码免费下载简单MySQL体积小,便于安装MySQL性能足够与商业数据库媲美功能强大MySQL提供的功能足够与商业数据库媲美性能优越MySQL数据库的优势2021/3/99MySQL数据库的优势性能高效MySQL是一个单进程多线程、支持多用户、基于 客 户 机 / 服 务 器 (C

4、lient/Server简称C/S)的关系数据库管理系统 跨平台支持支持多用户开源简单易用2021/3/910 MySQL 为关系型数据库(Relational Database Management System), 这种所谓的关系型可以理解为表格的概念, 一个关系型数据库由一个或数个表格组成, 如图所示的一个表格:MySQL的相关概念介绍2021/3/911表头表头(header): 每一列的名称;列列(row): 具有相同数据类型的数据的集合;行行(col): 每一行用来描述某个人/物的具体信息;值值(value): 行的具体信息, 每个值必须与该列的数据类型相同;键键(key): 表中

5、用来识别某个特定的人物的方法, 键的值在当前列中具有唯一性。MySQL的相关概念介绍2021/3/912MySQL数据库的安装 ThemeGallery is a Design Digital Content & Contents mall developed by Guild Design Inc.安装到网上下载MySQL安装包,按照教程进行安装。在cmd命令窗口中输入“mysql -h localhost u root -p”,接着在出现的提示中输入用户的密码。安装配置常用的参数是port(默认值是3306)。常用的参数还有”basedir”,”datadir”,”characte

6、r-set-server”,”sql_mode”,”max_connections”以及“default_storage_engine”等。客户机CMD命令提示符窗口WEB浏览器(例如phpMyAdmin)第三方客户机程序(例如MySQL-Front、MySQL Manager for MySQL等)2021/3/913配置步骤配置步骤:1. 将下载的 mysql-noinstall-5.1.69-win32.zip 解压至需要安装的位置, 如: C:Program Files;2. 在安装文件夹下找到 my-small.ini 配置文件, 将其重命名为 my.ini , 打开进行编辑, 在

7、client 与 mysqld 下均添加一行: default-character-set = gbk3. 打开 Windows 环境变量设置, 新建变量名 MYSQL_HOME , 变量值为 MySQL 安装目录路径, 这里为 C:Program Filesmysql-5.1.69-win324. 在 环境变量 的 Path 变量中添加 ;%MYSQL_HOME%bin;5. 安装 MySQL 服务, 打开Windows命令提示符, 执行命令: mysqld -install MySQL -defaults-file=my.ini 提示Service successfully install

8、ed.表示成功;Windows下MySQL的配置2021/3/914 与常规的脚本语言类似, MySQL 也具有一套对字符、单词以及特殊符号的使用规定, MySQL 通过执行 SQL 脚本来完成对数据库的操作, 该脚本由一条或多条MySQL语句(SQL语句 + 扩展语句)组成, 保存时脚本文件后缀名一般为 .sql。在控制台下, MySQL 客户端也可以对语句进行单句的执行而不用保存为.sql文件。1、标识符、标识符 标识符用来命名一些对象, 如数据库、表、列、变量等, 以便在脚本中的其他地方引用。MySQL标识符命名规则稍微有点繁琐, 这里我们使用万能命名规则: 标识符由字母、数字或下划线(

9、_)组成, 且第一个字符必须是字母或下划线。 对于标识符是否区分大小写取决于当前的操作系统, Windows下是不敏感的, 但对于大多数 linuxunix 系统来说, 这些标识符大小写是敏感的。MySQL脚本的基本组成2021/3/9152、关键字、关键字: MySQL的关键字众多, 这里不一一列出, 这些关键字有自己特定的含义, 尽量避免作为标识符。 3、语句、语句: MySQL语句是组成MySQL脚本的基本单位, 每条语句能完成特定的操作, 他是由 SQL 标准语句 + MySQL 扩展语句组成。 4、函数、函数: MySQL函数用来实现数据库操作的一些高级功能, 这些函数大致分为以下几

10、类: 字符串函数、数学函数、日期时间函数、搜索函数、加密函数、信息函数。MySQL脚本的基本组成2021/3/916MySQL有三大类数据类型, 分别为数字、日期时间、字符串, 这三大类中又更细致的划分了许多子类型:数字类型数字类型整数整数: tinyint、smallint、mediumint、int、bigint浮点数浮点数: float、double、real、decimal日期和时间日期和时间: date、time、datetime、timestamp、year字符串类型字符串类型字符串字符串: char、varchar文本文本: tinytext、text、mediumtext、lo

11、ngtext二进制二进制(可用来存储图片、音乐等可用来存储图片、音乐等): tinyblob、blob、mediumblob、longblobMySQL中的数据类型2021/3/917MySQL服务的启动、停止与卸载服务的启动、停止与卸载在 Windows 命令提示符下运行:启动启动: net start MySQL 停止停止: net stop MySQL 卸载卸载: sc delete MySQL使用MySQL数据库登录到登录到MySQL当 MySQL 服务已经运行时, 我们可以通过MySQL自带的客户端工具登录到MySQL数据库中, 首先打开命令提示符, 输入以下格式的命名:mysql

12、-h 主机名 -u 用户名 -p-h : 该命令用于指定客户端所要登录的MySQL主机名, 登录当前机器该参数可以省略;-u : 所要登录的用户名;-p : 告诉服务器将会使用一个密码来登录, 如果所要登录的用户名密码为空, 可以忽略此选项。2021/3/918使用MySQL数据库以登录刚刚安装在本机的MySQL数据库为例, 在命令行下输入 mysql -u root -p 按回车确认, 如果安装正确且MySQL正在运行, 会得到以下响应:Enter password:若密码存在, 输入密码登录, 不存在则直接按回车登录, 按照本文中的安装方法, 默认 root 账号是无密码的。登录成功后你将

13、会看到 Welecome to the MySQL monitor. 的提示语。然后命令提示符会一直以 mysql 加一个闪烁的光标等待命令的输入, 输入 exit 或 quit 退出登录。注意注意: MySQL语句以分号(;)作为语句的结束, 若在语句结尾不添加分号时, 命令提示符会以 - 提示你继续输入(有个别特例, 但加分号是一定不会错的);2021/3/919结构化查询语言SQL 4结构化查询语言(Structured Query Language或简称为SQL)是一种应用最为广泛的关系数据库语言。使用MySQL命令show databases;即可查看MySQL服务实例上所有的数据库

14、 。删除student数据库,使用SQL语句drop database student;2021/3/920结构化查询语言SQL 4表是数据库中最为重要的数据库对象。 使用SQL语句“create table表名”即可创建一个数据库表。例如: use HB_HNEMP2014;set default_storage_engine=InnoDB;create table my_table(today datetime,name char(20);/其中HB_HNEMP2014为数据库名使用SQL语句:drop table table_name;即可删除名为table_name的表。删除表后,My

15、SQL服务实例会自动删除该表结构定义文件(例如second_table.frm文件),以及数据、索引信息。该命令慎用! 2021/3/921SQL语句现实增、删、改、查使用insert语句插入新记录。语法格式如下:insert into 表名 (字段列表) values (值列表)例如:在数据库中增加一行:Insert into HB_HNEMP2015.SysUser( Personnel_ID ,Code ,Cname ,Password ,PasswordFormat ,PasswordSalt ,IsActive ,Description) values(SM201523380090,

16、hello,李明明,000000,0,null,1,武汉理工大学学生)2021/3/922SQL语句现实增、删、改、查在insert语句中使用select子句可以将源表的查询结果添加到目标表中,语法格式如下:insert into 目标表名(字段列表1) select (字段列表2) from 源表 where 条件表达式注意:字段列表1与字段列表2的字段个数必须相同,且对应字段的数据类型尽量保持一致。如果源表与目标表的表结构完全相同,“(字段列表1)”可以省略。2021/3/923SQL语句现实增、删、改、查使用delete删除表记录。语法格式如下:delete from 表名 where

17、条件表达式说明:如果没有指定where子句,那么该表的所有记录都将被删除,但表结构依然存在。例如:在数据库中删除一行信息:delete from SysUser where Personnel_ID=SM2015233800902021/3/924SQL语句现实增、删、改、查使用update更改表记录。语法格式如下:update 表名set 字段名1=值1,字段名2=值2,. ,字段名n=值nwhere 条件表达式where子句指定了表中的哪些记录需要修改。若省略了where子句,则表示修改表中的所有记录。set子句指定了要修改的字段以及该字段修改后的值。例如:在数据库中修改信息:Update

18、 SysUser set Cname=王明明 WHERE Personnel_ID=SM2015233800902021/3/925使用select语句查询表记录,语法格式如下:select 字段列表from 数据源 where条件表达式 group by 分组字段 having条件表达式 order by 排序字段 asc | desc WHERE语句在GROUP BY语句之前;SQL会在分组之前计算WHERE语句,HAVING语句在GROUP BY语句之后;SQL会在分组之后计算HAVING语句123使用谓词限制记录的行数使用select子句指定字段列表使用from子句指定数据源4多表连接

19、SQL语句现实增、删、改、查2021/3/926select语句的查询结果集的排序由数据库系统动态确定,往往是无序的,order by子句用于对结果集排序。在select语句中添加order by子句,就可以使结果集中的记录按照一个或多个字段的值进行排序,排序的方向可以是升序(asc)或降序(desc)。order by子句的语法格式如下。order by 字段名1 asc|desc ,字段名n asc|desc SQL语句现实增、删、改、查2021/3/927SQL语句现实增、删、改、查实例例1:在数据库中查询表中一行所有信息:例2:在数据库中查询某些信息:例3:查询一共有多少数据:SELE

20、CT * FROM HB_HNEMP2015.SysUser WHERE Cname=王明明 SELECT Personnel_ID ,Code ,Cname ,Password FROM HB_HNEMP2015.SysUser limit 3select COUNT(*)from SysUser2021/3/928SQL语句现实增、删、改、查实例例4:链接并查询两个表的列:例5:按日期查询:SELECT SysUser.Personnel_ID ,Code ,Cname ,Password FROM HB_HNEMP2015.SysUser,HB_HNEMP2015.SysUserRole

21、 where LENGTH(Code)=5 and SysUser.Personnel_ID=SysUserRole.Personnel_IDselect * from Incident where FindTime2015-04-22 00:00:00.000 and FindTime2015-05-18 00:00:00.0002021/3/929SQL语句现实增、删、改、查实例例6:在数据库中查找表中密码为jt开头的用户信息:例7:将表中信息降序排列:select Personnel_ID ,Code ,Cname ,Password from SysUser where Passwor

22、d=123456 and Code like jt%select*from SysUser order by Personnel_ID desc2021/3/930 group by子句将查询结果按照某个字段(或多个字段)进行分组(字段值相同的记录作为一个分组。 group by子句通常与聚合函数一起使用,语法格式如下:group by 字段列表 having条件表达式 with rollup group_concat()函数的功能是将集合中的字符串连接起来,此时group_concat()函数的功能与字符串连接函数concat()的功能相似。123group by子句与having子句gro

23、up by子句与聚合函数group by子句与group_concat()函数4group by子句与with roll up选项使用group by子句对记录分组统计2021/3/931SQL语句现实增、删、改、查实例例8:学会用GROUP BY 和having: char_length()可以计算中文长度,而length()计算的是普通字符的长度 select SysUser.Personnel_ID ,Code ,Cname from SysUser ,SysUserRole where Code like x% and Password=123456 and SysUser.Perso

24、nnel_ID=SysUserRole.Personnel_ID Group by SysUser.Personnel_ID ,Code ,Cname Having CHAR_LENGTH(Cname)3 order by SysUser.Personnel_ID desc2021/3/932SQL语句现实增、删、改、查实例例9:查询表中密码最长的用户: select SysUser.Personnel_ID ,Code ,Cname ,MAX(length(Code) as length from SysUser ,SysUserRole where Code like x% and Password=123456 and SysUser.Personnel_ID=SysUserRole.Personnel_ID Group by SysUser.Per

温馨提示

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

评论

0/150

提交评论