Mysql总结完整版
- 格式:doc
- 大小:454.50 KB
- 文档页数:30
mysql知识点总结归纳MySQL知识点总结一、MySQL简介MySQL是一种关系型数据库管理系统,常用于Web应用程序的后台数据存储。
它是开源软件,具有高性能、高可靠性和易于使用的特点。
以下是MySQL的一些重要知识点。
二、数据库的创建和删除1. 创建数据库:使用CREATE DATABASE语句可以创建一个新的数据库。
例如:CREATE DATABASE mydb;2. 删除数据库:使用DROP DATABASE语句可以删除一个数据库。
例如:DROP DATABASE mydb;三、数据表的创建和删除1. 创建数据表:使用CREATE TABLE语句可以在数据库中创建一个新的数据表。
例如:CREATE TABLE students (id INT, name VARCHAR(50), age INT);2. 删除数据表:使用DROP TABLE语句可以删除数据库中的一个数据表。
例如:DROP TABLE students;四、数据表的基本操作1. 插入数据:使用INSERT INTO语句可以向数据表中插入一条新的记录。
例如:INSERT INTO students (id, name, age) VALUES(1, '张三', 18);2. 查询数据:使用SELECT语句可以从数据表中查询记录。
例如:SELECT * FROM students;3. 更新数据:使用UPDATE语句可以更新数据表中的记录。
例如:UPDATE students SET age=20 WHERE id=1;4. 删除数据:使用DELETE FROM语句可以从数据表中删除记录。
例如:DELETE FROM students WHERE id=1;五、数据表的约束1. 主键约束:PRIMARY KEY约束用于唯一标识数据表中的记录。
例如:CREATE TABLE students (id INT PRIMARY KEY, name VARCHAR(50), age INT);2. 唯一约束:UNIQUE约束用于确保数据表中的某个列的值是唯一的。
mysql期末学习报告总结一、前言MySQL是一种流行的关系型数据库管理系统,广泛应用于Web应用程序的开发中。
在本学期的课程中,我们系统学习了MySQL数据库的使用方法和原理,包括数据库的设计与建模,SQL语句的编写和优化,以及数据库的性能调优等方面的知识。
在此报告中,我将总结本学期学习的内容,回顾自己的学习过程,并就MySQL数据库的进一步学习和应用提出一些建议。
二、学习内容回顾在本学期的学习过程中,我主要学习了以下方面的知识:1. 数据库基础知识数据库基础知识是学习MySQL数据库的基础,包括关系型数据库的概念、数据库的设计与建模、SQL语言的基本语法等。
通过学习这些知识,我对数据库的概念和基本操作有了更深入的了解。
2. MySQL数据库的安装与配置学习数据库之前,首先需要将MySQL数据库安装在自己的计算机上。
我按照教程学习了MySQL数据库的安装方法,并完成了数据库的配置。
3. SQL语句的基本操作SQL是用于操作数据库的标准语言,通过学习SQL语句的基本操作,我可以对数据库进行增删改查等常用操作。
学习了SQL语句之后,我可以通过编写SQL语句对数据库进行操作,并实现对数据的增删改查。
4. 数据库的设计与优化数据库的设计与优化是数据库开发中非常重要的一环。
在本学期的学习中,我学习了数据库的设计原则和优化方法,包括通过设计良好的表结构提高查询效率,通过索引提高检索效率等。
5. 数据库的备份与恢复数据库的备份与恢复是数据库管理中的关键操作。
通过学习备份和恢复方法,我可以在数据库出现故障或数据丢失时,及时进行数据的恢复,确保数据的完整性和安全性。
6. MySQL的性能调优MySQL的性能调优是数据库管理中的重要环节。
通过学习性能调优的方法和技巧,我可以通过优化数据库的配置和查询语句,提高数据库的性能和响应速度。
三、学习心得在本学期的学习中,我不仅学习了MySQL数据库的基本知识和使用方法,还学习到了数据库设计和优化的技巧。
MySQL基础快速⼊门知识总结(附思维导图)⽬录前⾔⼀.数据库基础知识1.什么是数据库2.数据库的分类3.数据库的常⽤语⾔4.数据库的常⽤操作⽅式5.MySQL的架构⼆.数据库的增删改查1.创建数据库2.查询数据库3.修改数据库4.删除数据库三.表的增删改查1.创建表2.查询表3.修改表4.删除表四.记录的增删改查1.插⼊记录2.查询记录(最常⽤)3.修改记录4.删除记录五.字段类型1.数字型1.1整数型1.2⼩数型2.⽂本型3.⽇期时间六.字段属性总结前⾔本⽂是我这段时间⾃学MySQL之后,⾃⼰总结的⼀些MySQL的⼊门基础知识.我⾃⼰⽤的是MySQL 5.7.⼀.数据库基础知识1.什么是数据库数据库是按照⼀定数据结构,进⾏组织,存储,管理数据的仓库数据的仓库,是⼀种对⼤量信息进⾏管理的⾼效解决⽅案.数据库系统DBS=数据库DB+数据库管理系统DBMS.2.数据库的分类数据库的分为关系型数据库和分关系型数据库.关系型:是建⽴在关系模型上的数据库,关系模型顾名思义就是⼆维表模型,⽤来记录实体和实体与实体信息之间的关系信息.常见的关系型数据库有Oracle ,MySQL ,SQL Server.⾮关系型数据库:不建⽴在关系模型上的数据库.主要有MongoDB Redis3.数据库的常⽤语⾔数据库系统DBS结构化查询语⾔SQL数据库DB数据库管理系统DBMS表table⾏row => 记录record列column => 字段field4.数据库的常⽤操作⽅式DOS命令:连接远程主机:mysql -h 主机名/IP地址 -P端⼝号 -u ⽤户名 -p 密码连接本机主机:mysql -u⽤户名 -p密码客户端(可视化软件):Navicat代码:Web⽹页:PHPMyAdmin5.MySQL的架构C/S架构:服务端管理和存储数据客户端发送操作请求⼆.数据库的增删改查1.创建数据库#创建数据库的语法create database `库名` charset=utf8/gbk;创建数据库前,需要先连接进数据库,可以⽤⾃⼰的本地数据库练习.2.查询数据库#查询所有数据库show databases;#按条件查询like ,其中%表⽰任意多个字符,-表⽰任意⼀个字符.create databases like '%-';#查询建库语句show create database;3.修改数据库#修改数据库(仅能修改选项,也就是字符集这些)alter database `库名` [新选项];4.删除数据库#删除数据库(语法很简单,但后果很严重.⼀般你也没有权限,哈哈.)drop database `库名`;三.表的增删改查1.创建表#创建表前,先指定数据库use `指定库名`;#创建表的create table `表名`(`字段1` 字段1类型字段1属性,...`字段N` 字段N类型字段N属性);[选项]其中的选项主要包括三⼤类:1. 字符集 charset=utf8 / GBK …2. 数据引擎 engine=innodb / mysiam3. 备注 comment='‘备注内容''其它的字段类型和字段属性,后⾯有详细写到.2.查询表#查询所有表show tables;#条件查询show tables like '%-';#查询表结构desc `表名`;#查询建表语句show create table `表名`;3.修改表#修改表选项alter table `表名` [新选项];#修改表名rename table `旧表命` to `新表名`;#修改表内的字段alter table `表名` change `旧字段名` `新字段名` 新字段类型; #添加新字段到字段末尾alter table `表名` add `新字段名` 类型属性;#添加字段到对应字段后alter table `表名` add `新字段名` 类型属性 after `对应字段` #添加字段到最前⾯alter table `表名` add `新字段名` 类型属性 first;4.删除表#如果表存在,则删除表,否则报错drop table [if exists] `表名`;四.记录的增删改查1.插⼊记录#插⼊记录insert into `表名`(`字段1`,...`字段`) values('值1',...,'值N');#当⼀次传⼊所有值时,可以省不写字段insert into `表名` values('值1',...,'值N');#当需⼀次传⼊多条记录时insert into `表名`(`字段1`,...`字段`) values('值1',...,'值N'),('值1',...,'值N'),...,('值1',...,'值N');#当需⼀次传⼊多条记录,且字段全传⼊时insert into `student` values(值列表1),(值列表2),(值列表n); 2.查询记录(最常⽤)#查询语法select [选型] 字段列表 as 别名 from `表名` where 条件表达式;1、条件表达式:逻辑运算符:and or not⽐较运算符:+ - * / < > = !=2、选项:all:查询所有,不写默认就是所有distinct:去重.重复指查询后的数据⾥,记录的所有字段全部相同,才认定为重复.as:别名.给查询后的字段设置⼀个别名,⽅便查阅.常见的聚合函数:count(),Max(),Min(),Sum(),avg()3、连表查询 join1.内连接 inner join#将参与连接的两个表中符合连接条件的记录查询出来,不符合的过滤掉.select * form `表1` inner join `表2` on 连接条件;2.左外连接 left Join#将参与连接的左表中即使不能匹配连接条件的记录也会查询出来,右表不符合的过滤掉select * from `表1` left join `表2` on 连接条件;3.右外连接 right join#将参与连接的右表中即使不能匹配连接条件的记录也会查询出来,左表不符合的过滤掉select * from `表1` right join `表2` on 连接条件;3.修改记录#语法update `表名` set `字段`='新值' where 条件表达式;4.删除记录#语法delete from `表名` where 条件表达式;五.字段类型1.数字型1.1整数型tinyint:占⽤⼀个字节,⼀共能表⽰256个数有符号:-128~127⽆符号:0~255int:占⽤4个字节有符号:-21亿~21亿⽆字符:0~42亿1.2⼩数型浮点数:float(M,D):单精度浮点数double(M,D):双精度浮点数定点数:decimal(M,D):数据不会丢失的⼩数类型,常⽤于记录货币2.⽂本型1. char(M):定长字符,M表⽰最⼤的字符数.优势为运算速度快.常⽤在255个字符内的固定长度的字符.如:⾝份证,电话号码等.2. varchar(M):变长字符,M表⽰最⼤的字符数.优势为节省空间.常⽤在255个字符以内,长度不确定的字符.3. text:常⽤在256个字符以上的⽂本中3.⽇期时间1. datetime:固定的⽇期时间2. timestamp:时间戳:当新增记录或更新记录时⾃动更新为当前系统时间,⽤于记录最后⼀次修改的时间或新插⼊记录的时间六.字段属性1. not null:设置该字段的值不能为空,不写就是默认可以为空2. default 默认值:设置⼀个默认值,没有数据传⼊就是使⽤默认值.有数据传⼊则使⽤传⼊的值3. comment:备注⽤汉字备注字段,⽅便后期维护4. unique key:唯⼀值该字段的值不能重复,但可以为空5. primary key 主键:⽤于唯⼀标识⼀条记录⼀个表最能只能有⼀个主键不能为空不能重复6. auto_increment ⾃动增长:在新插⼊记录时,⾃动在本字段最⼤值的基础上加1,条件本字段的类型必须为整数型.常与主键⼀起使⽤,但不是必须与主键⼀起使⽤.总结到此这篇关于MySQL基础快速⼊门知识总结的⽂章就介绍到这了,更多相关MySQL基础⼊门内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。
MySQL实训报告总结为期一个月的MySQL数据库实训结束了,这段时间的学习让我对MySQL有了更深入的了解。
在这次实训中,我不仅掌握了MySQL 的基本操作,还学会了如何进行数据库设计和优化。
现在,我将对这次实训进行总结。
一、实训内容在这次实训中,我们主要学习了MySQL的基本操作,包括创建数据库、表,插入、查询、更新和删除数据等。
此外,我们还学习了如何进行数据库设计和优化,例如使用索引、分区、缓存等技巧来提高数据库性能。
二、遇到的问题和解决方案在实训过程中,我遇到了一些问题,但通过自己的努力和同学的帮助,我成功地解决了它们。
以下是我遇到的一些问题和解决方案:1. 问题:在查询数据时,查询速度很慢。
解决方案:我发现是因为没有对查询字段建立索引导致的。
通过建立索引,我成功地提高了查询速度。
2. 问题:在插入大量数据时,插入速度很慢。
解决方案:我发现是因为没有对插入数据建立适当的索引和优化插入语句导致的。
通过优化插入语句和使用批量插入技巧,我成功地提高了插入速度。
3. 问题:在更新数据时,更新速度很慢。
解决方案:我发现是因为没有对更新字段建立索引导致的。
通过建立索引,我成功地提高了更新速度。
三、经验和教训通过这次实训,我学到了很多关于MySQL的知识和技能。
以下是我的一些经验和教训:1. 索引是提高数据库性能的重要手段,但过多的索引会导致数据插入和更新速度变慢。
因此,需要根据实际需求选择合适的索引策略。
2. 优化查询语句是提高数据库性能的关键,需要认真编写和优化查询语句。
3. 在进行数据库设计时,需要考虑数据的一致性和完整性,避免出现数据冗余和异常。
4. 在进行数据库操作时,需要注意操作的原子性和隔离性,保证数据的正确性和可靠性。
四、总结这次MySQL数据库实训让我收获颇丰。
通过实践操作,我不仅掌握了MySQL的基本操作和数据库设计技巧,还提高了自己的问题解决能力。
在未来的学习和工作中,我将继续深入学习数据库技术,不断提高自己的技能水平。
M y S Q L知识总结-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIANMySQL知识总结1.删除索引 drop index是关系人table 删除某列约束条件的是drop4.结构化查询语句 sql(数据库管理系统)中缺省语言 sql显示所有列 *检索带特定条件 where 关键字8.去除重复数据 distinct等于空值10.任何两个null值都不可能相等错误升序排列输出 null总是第一个被显的项正确11.连接一表中所有行和二表中的所有匹配行 left right12.是否存在数据的子查询 exists 实现包含14.插入数值的数目必须与列表中中的属性数目一致正确当表中插入数据值的数目等于表的全部属性的数目时,可以省略表正确 table 修改表16.联合查询使用关键字 union17.运算符 any 表示至少一个条件18.访问快关机数据丢失 memory MEMORY19.还原数据库 mysqldump20.删除用户 drop user21.数据库特点:免费开源功能强大跨平台位整数 2位小数 decimal(4,2)23.随机数 rand用户性别最好用 enum('男'.'女') 枚举/单选为空 addr is null26.用户电话号码 int 类型超大整型28.截取一小段字符串 substring29.小于等于一个数的最大整数 max floor30.数据过滤 having31.主键是标识表中的唯一实体允许有多个错误32.更新 update(20,30,40)表示年龄 20 30 或者 4034.姓名升序 order by name ase35.返回字符串 length一/sql语言:数据库定义语言(DDL):库,表,视图,索引,触发器 create alter drop数据库操纵语言(DML):插入,查询,更新,删除数据insert select update delete数据库控制语言:控制用户访问权限 grant revoke二/查询表结构 desc 表名show create table 表名查询表记录 select * from 表名三/修改1.修改表名alter table 旧 rename to 新;2.修改字段类型alter table 表名 modify 属性名数据类型;3.修改字段名alter table 表名 change 旧属性名新属性名数据类型;4.修改字段的数据类型alter table 表名 modify 属性名数据类型;5.修改字段名alter table 表名 change 旧属性新属性新数据类型;6.增加字段alter table 表名 add 属性名1 数据类型约束条件 first after 属性名2;7.删除字段alter table 表名 drop 属性名;8.修改字段的排列位置alter table 表名 modify 属性名1 数据类型 first/after 属性名2;9.更改表的搜索引擎alter table 表名 engine=mylsam;10.删除表的外键约束alter table 表名 drop foreign key 外键别名;11.删除普通表alter table 表名;12.删除父表alter table 表名 drop foreign key 外键别名;(三)1.如何设置外键子表的外键必须依赖于父表的某个字段,因此父表必须先于子表建立,而且,父表中的被依赖字段必须是主键或者组合主键中的一个。
mysql实习收获与总结(实用15篇)mysql实习收获与总结第1篇此次毕业实习,我领悟了“理论与实践的结合才是硬道理”,掌握了运用所学知识解决处理实际问题的方法和技巧,学会了与员工同事相处沟通的有效方法途径,积累了处理有关人际关系问题的经验方法,同时我体验到了社会工作的艰苦性。
实习中也暴露出自己的很多缺点和不足,我想这对我以后的工作和发展都是有较大限制的。
人们常说,大学是个象牙塔。
确实,学校与职场、学习与工作、学生与员工之间存在着巨大的差异。
从校园走向社会,在这个转换的过程中,人的观点、行为方式、心理等方面都要做适当的调整。
所以,不要老抱怨公司不愿招聘应届毕业生,有时候也得找找自己身上的问题。
而这次实习提供了这样一个机会,让我接触到真实的职场,有了实习的经验,以后毕业工作时就可以更快、更好地融入新的环境,完成学生向职场人士的转变。
在实习的那段时间,也让我体会到从工作中再拾起书本的困难性。
每天较早就要上班工作,晚上按时下班回家,深感疲惫,很难再有精力静下心来看书。
这让我更加珍惜在学校的时光。
mysql实习收获与总结第2篇这短短一个月的实习经历,让我认识到实习生该有“初生牛犊不怕虎”的`精神。
实习是一个学生走进社会的过渡阶段和必经阶段。
在我看来,一个成功的实习生,应要牢记实习生的身份,也要忘却实习生的身份。
之所以要牢记,如上边讲到的,目的是学习,这也职责之在。
因而,必须要主动争取机会,多做,多思考。
而忘却则是因为只有把自己当作是正职人员来看待,从心态上端正自己的态度,才能在实习期间有更大的收获。
刚到公司实习的时候,俨然像个小学生上课那般乖巧和拘谨。
人家没叫我坐时,我就呆站着;坐着的时候也是毕恭毕敬,不敢多手乱动人家的东西;私底下说话也不敢大声,拍扰乱了“课堂纪律”。
然而,工作和机会都是要靠自己去争取的。
在学生到实习生,再由实习生到从职人员这个过程中,谁的角色转变得越快,谁就在起跑线上了一步。
在刚开始的一个星期里,我的沉默和低调给我带来了闲适和无聊的实习生活。
mysql实验报告总结与反思MySQL 实验报告总结和反思:1. 实验目的本次实验的目的是通过使用 MySQL 数据库管理系统,实现对数据的记录、存储和管理。
通过本次实验,学生将学习到如何使用 MySQL 数据库管理系统创建数据库、表、索引、查询等操作,并了解 MySQL 数据库的特点和功能。
2. 实验环境本次实验的环境为本地计算机,使用 MySQL 客户端连接到本地MySQL 数据库服务器。
学生可以使用任何 MySQL 客户端工具来完成实验,如 phpMyAdmin、MySQL Workbench 等。
3. 实验步骤(1) 创建数据库在 MySQL 客户端中创建一个新的数据库,例如“test_db”。
(2) 创建表在数据库中创建一个新的表,例如“test_table”。
在表中添加一些列,例如“id”、“name”、“age”等。
(3) 插入数据使用 MySQL 客户端向表中插入数据,例如:```INSERT INTO test_table (name, age) VALUES ("张三", 18), ("李四", 25), ("王五", 30);```(4) 查询数据使用 MySQL 客户端查询表中的数据,例如:```SELECT * FROM test_table;```(5) 索引数据创建一个新的索引,例如“test_table_index”,用于提高查询性能。
(6) 备份和还原数据使用 MySQL 备份和还原工具备份和还原数据,例如:```备份 database test_db;还原 database test_db;```4. 实验反思通过本次实验,学生掌握了 MySQL 数据库管理系统的基本操作,包括创建数据库、表、索引、查询等操作。
学生还了解了 MySQL 数据库的特点和功能,例如支持多种编程语言、支持多种数据库模式等。
然而,在本次实验中,学生也发现了一些不足之处:(1) 数据库设计不够严谨在设计数据库时,需要考虑到数据的完整性、一致性和安全性。
MySQL数据库基本知识点总结一、什么是MySQL数据库MySQL数据库是一种关系型数据库管理系统(RDBMS),它是目前世界上最流行的开源数据库管理系统之一。
MySQL以其高性能、稳定性和易用性而受到广泛的应用和推崇。
下面将会对MySQL数据库的基本知识点进行详细的探讨。
二、MySQL数据库的组成MySQL数据库由多个组件组成,主要包括以下几个部分:1.Server端:MySQL数据库的核心组件,负责接收和处理客户端的请求,并执行相应的操作。
它包括了MySQL的核心服务程序mysqld以及其他一些辅助程序。
2.Client端:用于连接到MySQL服务器并发送SQL语句进行数据库操作的程序。
常用的MySQL客户端工具有MySQL命令行客户端、MySQL Workbench等。
3.存储引擎(Storage Engine):MySQL数据库支持多种存储引擎,用于处理和存储数据。
常用的存储引擎有InnoDB、MyISAM、MEMORY等。
三、MySQL数据库的基本概念1. 数据库(Database)数据库是指用于存储和管理数据的仓库。
在MySQL中,数据库是由一组相关的数据表和其他数据库对象(如视图、存储过程等)组成。
2. 数据表(Table)数据表是数据库中用于存储数据的基本单位。
每个数据表由一个表名和若干列组成,每一列都有对应的数据类型和约束条件。
3. 列(Column)列是数据表中的一个字段,它定义了数据的类型和特征。
每一列都有一个唯一的列名。
4. 行(Row)行是数据表中的一条记录,也称为记录。
每一行都代表了数据表中的一个实例。
5. 主键(Primary Key)主键是数据表中用于唯一标识每一行记录的列或列的组合。
主键必须保证唯一性和非空性。
6. 外键(Foreign Key)外键是一个表的列,它引用了另一个表的主键,用于建立表与表之间的关系。
7. 索引(Index)索引是一种数据结构,用于提高数据的访问效率。
mysql数据库实验报告个人总结-回复MySQL数据库实验报告个人总结MySQL是一款开源的数据库管理系统,能够为用户提供高效、灵活、可靠的数据管理服务。
在本次实验中,我对MySQL进行了学习和实践,通过学习MySQL的基础知识、SQL语句操作以及数据表设计规范等等,我对MySQL数据库的原理和应用有了更深入的了解,为我今后的数据开发和应用工作打下了基础。
在此,我将对本次实验进行个人总结和分析。
一、MySQL基础MySQL是一套基于客户端/服务器构架,并且支持多线程处理的关系型数据库管理系统。
MySQL的设计目标是快速而且易于使用。
1.学习MySQL的过程中,最基础的是了解MySQL的安装、启动和登录。
首先,通过官网或社区下载MySQL安装程序。
然后启动MySQL服务,在命令行中使用mysql命令登录MySQL服务。
在成功登录后,可以在命令行中进行对MySQL的操作。
2. 掌握MySQL的基础命令语句。
本次实验的基础命令主要包括:show databases、create database、use database、show tables、create table、alter table、drop table、insert、update、delete和select等等。
3.掌握MySQL与SQL的关系。
MySQL是一种基于SQL语言的关系型数据库管理系统,因此SQL是MySQL的核心语言。
在MySQL中,我们可以通过利用SQL语言来管理数据、查询数据、更新数据和删除数据等等。
二、MySQL数据表设计规范本次MySQL实验中,我还学习了MySQL数据表设计规范,主要包括以下几个方面:1.确定主键:在创建数据表时,必须确定主键,主键是用于标识数据表中每一行数据的唯一性的列。
2. 规定数据类型和长度:MySQL中的数据类型决定了在这个列中可以放置哪些类型的数据。
数据类型包括整数、浮点数、日期时间等等,长度表示这个列的最大长度。
一、数据库概述数据库(DataBase,DB):指长期保存在计算机的存储设备上,按照一定规则组织起来,可以被各种用户或应用共享的数据集合。
数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。
用户通过数据库管理系统访问数据库中的数据。
数据库软件应该为数据库管理系统,数据库是通过数据库管理系统创建和操作的。
数据库:存储、维护和管理数据的集合。
二、数据库的安装与配置* 安装* 参照图解* 一路下一步* 卸载1.停止mysql服务net stop mysql 启动mysql服务net start mysql2.卸载mysql3.找到mysql 安装目录下的my.ini datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"* 运行* 安装成功了打开cmd --> mysql -uroot -p你的密码* 修改mysql root用户密码1) 停止mysql服务运行输入services.msc 停止mysql服务或者cmd --> net stop mysql2) 在cmd下输入mysqld--skip-grant-tables 启动服务器光标不动(不要关闭该窗口)3) 新打开cmd 输入mysql -u root -p 不需要密码use mysql;update user set password=password('abc') WHERE User='root';4) 关闭两个cmd窗口在任务管理器结束mysqld 进程5) 在服务管理页面重启mysql 服务密码修改完成* 配置* 参照图解* 到选择字符集时停三、sql概述SQL:Structure Query Language。
(结构化查询语言)SQL被美国国家标准局(ANSI)确定为关系型数据库语言的美国标准,后来被国际化标准组织(ISO)采纳为关系数据库语言的国际标准。
各数据库厂商都支持ISO的SQL标准。
普通话各数据库厂商在标准的基础上做了自己的扩展。
方言四、Sql的分类DDL(*)(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等;DML(**)(Data Manipulation Language):数据操作语言,用来定义数据库记录(数据);DCL(Data Control Language):数据控制语言,用来定义访问权限和安全级别;DQL(*****)(Data Query Language):数据查询语言,用来查询记录(数据)。
* 注意:sql语句以;结尾4.1 DDL:操作数据库、表、列等使用的关键字:CREATE、ALTER、DROP* 4.1.1操作数据库创建Create database mydb1;#创建并指定字符编码Create database mydb2 character set utf8;#创建并指定字符编码和数据库排序规则Create database mydb3 character set utf8 COLLATE utf8_general_ci;查询查看当前数据库服务器中的所有数据库Show databases;查看前面创建的mydb2数据库的定义信息Show create database mydb2;删除前面创建的mydb3数据库Drop database mydb3;修改查看服务器中的数据库,并把mydb2的字符集修改为utf8;alter database mydb2 character set utf8;删除Drop database mydb3;* 其他:查看当前使用的数据库Select database();切换数据库Use mydb2;* 4.1.2操作数据表* 语法:create table 表名(字段1 字段类型,字段2 字段类型,...字段n 字段类型);* 常用数据类型:int:整型double:浮点型,例如double(5,2)表示最多5位,其中必须有2位小数,即最大值为999.99;char:固定长度字符串类型;char(10) 'aaa ' 占10位varchar:可变长度字符串类型;varchar(10) 'aaa' 占3为text:字符串类型;blob:字节类型;date:日期类型,格式为:yyyy-MM-dd;time:时间类型,格式为:hh:mm:sstimestamp:时间戳类型yyyy-MM-dd hh:mm:ss 会自动赋值datetime:日期时间类型yyyy-MM-dd hh:mm:ss当前数据库中的所有表SHOW TABLES;查看表的字段信息DESC employee;在上面员工表的基本上增加一个image列。
ALTER TABLE employee ADD image blob;修改job列,使其长度为60。
ALTER TABLE employee MODIFY job varchar(60);删除image列,一次只能删一列。
ALTER TABLE employee DROP image;表名改为user。
RENAME TABLE employee TO user;查看表格的创建细节SHOW CREATE TABLE user;修改表的字符集为gbkALTER TABLE user CHARACTER SET gbk;列名name修改为usernameALTER TABLE user CHANGE name username varchar(100);删除表DROP TABLE user ;4.2 DML操作(重要)查询表中的所有数据SELECT * FROM 表名;DML是对表中的数据进行增、删、改的操作。
不要与DDL混淆了。
INSERT 、UPDATE、DELETE小知识:在mysql中,字符串类型和日期类型都要用单引号括起来。
空值:null4.2.1插入操作:INSERT:语法:INSERT INTO 表名(列名1,列名2 ...)V ALUES(列值1,列值2...);注意:列名与列值的类型、个数、顺序要一一对应。
可以把列名当做java中的形参,把列值当做实参。
参不要超出列定义的长度。
如果插入空值,请使用null插入的日期和字符一样,都使用引号括起来。
练习:create table emp(id int,name varchar(100),gender varchar(10),birthday date,salary float(10,2),entry_date date,resume text);INSERT INTO emp(id,name,gender,birthday,salary,entry_date,resume)V ALUES(1,'zhangsan','female','1990-5-10',10000,'2015-5-5-','good girl');INSERT INTO emp(id,name,gender,birthday,salary,entry_date,resume)V ALUES(2,'lisi','male','1995-5-10',10000,'2015-5-5','good boy');INSERT INTO emp(id,name,gender,birthday,salary,entry_date,resume)V ALUES(3,'你好','male','1995-5-10',10000,'2015-5-5','good boy');小知识:查看数据库编码的具体信息Show variables like ‘character%’;临时更改客户端和服务器结果集的编码Set character_set_client=gbk;Set character_set_results=gbk;4.2.2 修改操作UPDATE:语法:UPDA TE 表名SET 列名1=列值1,列名2=列值2 。
WHERE 列名=值练习:将所有员工薪水修改为5000元。
UPDA TE emp SET salary=5000将姓名为’zs’的员工薪水修改为3000元。
UPDA TE emp SET salary=3000 WHERE name=’ zhangsan’;将姓名为’aaa’的员工薪水修改为4000元,job改为ccc。
UPDATE emp SET salary=4000,gender='female' WHERE name='lisi';将wu的薪水在原有基础上增加1000元。
UPDATE emp SET salary=salary+1000 WHERE gender='male';4.2.3 删除操作DELETE:语法:DELETE 表名【WHERE 列名=值】练习:删除表中名称为’zs’的记录。
DELETE FROM emp WHERE name=‘zs’;删除表中所有记录。
DELETE FROM emp;使用truncate删除表中记录。
TRUNCATE TABLE emp;DELETE 删除表中的数据,表结构还在;删除后的数据可以找回TRUNCATE 删除是把表直接DROP掉,然后再创建一个同样的新表。
删除的数据不能找回。
执行速度比DELETE快。
4.3 DQL操作DQL数据查询语言(重要)数据库执行DQL语句不会对数据进行改变,而是让数据库发送结果集给客户端。
查询返回的结果集是一张虚拟表。
查询关键字:SELECT语法:SELECT 列名FROM表名【WHERE --> BROUP BY -->HA VING--> ORDER BY】语法:SELECT selection_list /*要查询的列名称*/FROM table_list /*要查询的表名称*/WHERE condition /*行条件*/GROUP BY grouping_columns /*对结果分组*/HA VING condition /*分组后的行条件*/ORDER BY sorting_columns /*对结果分组*/LIMIT offset_start, row_count /*结果限定*/创建名:1基础查询1.1查询所有列SELECT * FROM stu;1.2查询指定列SELECT sid, sname, age FROM stu;2条件查询2.1条件查询介绍条件查询就是在查询时给出WHERE子句,在WHERE子句中可以使用如下运算符及关键字:●=、!=、<>、<、<=、>、>=;●BETWEEN…AND;●IN(set);●IS NULL;●AND;●OR;●NOT;2.2查询性别为女,并且年龄50的记录SELECT * FROM stuWHERE gender='female' AND ge<50;2.3查询学号为S_1001,或者姓名为liSi的记录SELECT * FROM stuWHERE sid ='S_1001' OR sname='liSi';2.4查询学号为S_1001,S_1002,S_1003的记录SELECT * FROM stuWHERE sid IN ('S_1001','S_1002','S_1003');2.5查询学号不是S_1001,S_1002,S_1003的记录SELECT * FROM tab_studentWHERE s_number NOT IN ('S_1001','S_1002','S_1003');2.6查询年龄为null的记录SELECT * FROM stuWHERE age IS NULL;SELECT *FROM stuWHERE age>=20 AND age<=40;或者SELECT *FROM stuWHERE age BETWEEN 20 AND 40;2.8查询性别非男的学生记录SELECT *FROM stuWHERE gender!='male';或者SELECT *FROM stuWHERE gender<>'male';或者SELECT *FROM stuWHERE NOT gender='male';2.9查询姓名不为null的学生记录SELECT *FROM stuWHERE NOT sname IS NULL;或者SELECT *FROM stuWHERE sname IS NOT NULL;3模糊查询当想查询姓名中包含a字母的学生时就需要使用模糊查询了。