Mysql数据库总结CSDN博客一数据库简介二MySQL数据类型(5.数据库(Database,DB)是按照数据结

–1.创建数据库CREATEDATABASEmybase;–2.创建数据库并指定字符集CREATEDATABASEmybase1CHARACTERSETUTF8;–3.查看所有数据库SHOWDATABASES;–4.查看当前使用的数据库SELECTDATABASE();–5.修改数据库ALTERDATABASEmybaseCHARACTERSETUTF8;–6.删除数据库DROPDATABASEmybase1;–切换数据库USEmybase;

–1.创建表createtableexam(idINT(11)PRIMARYKEYAUTO_INCREMENT,nameVARCHAR(20),EnglishINT,ChineseINT,Mathint);–2.查看数据库中所有表showTABLES;–3.查看表结构descexam;

–4.表的删除droptableexam;

–5.表的修改(基于exam表)

–5.1添加列ALTERTABLEexamADDHistoryINTNOTNULL;–5.2修改列的类型、长度、约束ALTERTABLEexamMODIFYHistoryDOUBLE(7,2);–5.3修改表的列名ALTERTABLEexamCHANGEHistoryPhysicsINTNOTNULL;–5.4修改表名RENAMETABLEexamTOscore;–5.5修改表的字符集ALTERTABLEscoreCHARACTERSETGBK;–5.6删除列ALTERTABLEscoreDROPPhysics;–5.7

ALTERTABLE

–三、练习:创建emp表

CREATETABLEemp(empnoINTPRIMARYKEYAUTO_INCREMENT,enameVARCHAR(20),jobVARCHAR(20),mgrint,hiredateDATE,salDOUBLE(7,2),commitdouble(5,2),deptnoINTNOTNULL–非空约束);

--数据操纵语言DML(update,insert,delete)–1.插入部分列INSERTINTOscore(id,NAME,English,Chinese,Math)VALUE(1,‘Hudie’,90,90,90);INSERTINTOscore(id,NAME,English,Chinese)VALUE(NULL,‘diedie’,91,91);–2.插入所有列INSERTINTOscoreVALUES(3,‘Shu’,80,80,80);–3.修改记录UPDATEscoresetChinese=99;–全表修改UPDATEscoreSETMath=100WHEREid=‘1’;–4.删除记录DELETEFROMscoreWHEREid=‘2’;DELETEFROMscore;

–delete与truncate的区别√–TRUNCATETABLE删除表的记录:将整个表删除掉,重新创建一个新的表,属于DDL.–DELETEFROM删除表的记录:一条一条进行删除,DELETE.INSERTINTOscoreVALUES(3,‘Shu’,80,80,80);DELETEFROMscore;INSERTINTOscoreVALUES(NULL,‘Libai’,10,10,10);–不会清空AUTO_INCREMENT值TRUNCATETABLEscore;INSERTINTOscoreVALUES(NULL,‘Libai’,10,10,10);–清空AUTO_INCREMENT的值

–事务管理:只能作用在DML语句上,如果在一个事务中使用delete删除所有记录,可以找回.–使用delete删除后可以用COMMIT和ROLLBACK找回数据,使用truncate后就找不回来了.

–delete、truncate、drop的区别√delete、truncate、只是删除表的记录,而drop会直接删除表.

--数据控制语言DCL(grant,revoke)--主要为用户授予和撤销权限–1.创建用户:CREATEUSER用户名@ipIDENTIFIEDBY密码;createuserFox@localhostidentifiedby‘123456’;

–3.撤销权限:REVOKE权限1,权限2,…,权限nON数据库名.*FROM用户名@IP;revokeselectonmysql.*fromFox@localhost;

--一、分组查询CREATETABLEemp(empnoINTPRIMARYKEYAUTO_INCREMENT,enameVARCHAR(20),jobVARCHAR(20),mgrint,hiredateDATE,salDOUBLE(7,2),commitdouble(5,2),deptnoINTNOTNULL);

INSERTINTOempVALUES(1002,‘白展堂’,‘clerk’,1001,‘1983-05-09’,7000.00,200.00,10),(1003,‘李大嘴’,‘clerk’,1002,‘1980-07-08’,8000.00,100.00,10),(1004,‘吕秀才’,‘clerk’,1002,‘1985-11-12’,4000.00,null,10),(1005,‘郭芙蓉’,‘clerk’,1002,‘1985-03-04’,4000.00,null,10),(2001,‘胡一菲’,‘leader’,null,‘1994-03-04’,15000.00,NULL,20),(2002,‘陈美嘉’,‘manger’,2001,‘1993-05-24’,10000.00,300.00,20),(2003,‘吕子乔’,‘clerk’,2002,‘1995-05-19’,7300.00,100.00,20),(2004,‘张伟’,‘clerk’,2002,‘1994-10-12’,8000.00,500.00,20),(2005,‘曾小贤’,‘clerk’,2002,‘1993-05-10’,9000.00,700.00,20),(3001,‘刘梅’,‘leader’,null,‘1968-08-08’,13000.00,NULL,30),(3002,‘夏冬梅’,‘manger’,3001,‘1968-09-21’,10000.00,600.00,30),(3003,‘夏雪’,‘clerk’,3002,‘1989-09-21’,8000.00,300.00,30),(3004,‘张一山’,‘clerk’,3002,‘1991-06-16’,88000.00,200.00,30);

–1.查询每个部门的平均工资SELECTdeptno,AVG(sal)FROMempGROUPBYdeptno;–2.查询每个职位的最高工资和最低工资SELECTjob,MAX(sal),MIN(sal)FROMempGROUPBYjob;–3.查询每个部门每种职位的最高工资SELECTdeptno,job,MAX(sal)FROMempGROUPBYdeptno,job;–4.查询每个部门的最高薪水,只有最高薪水大于15000的记录才被输出显示SELECTdeptno,MAX(sal)ASmax_salFROMempGROUPBYdeptnoHAVINGmax_sal>=15000;–5.查询每个部门的平均工资SELECTdeptno,AVG(sal)FROMempGROUPBYdeptnoHAVINGAVG(sal)>9000;–6.Havaing子句与where子句的区别(1)where是用来过滤记录的,HAVING是用来过滤分组的(2)过滤的时机不相同,先过滤Where后过滤Having.(3)WHERE是在查询表时逐行过滤以选取满足条件的记录(4)having是在数据查询后并且分完组后对分组进行过滤的(5)HAVING必须跟在groupBY(6)查询语句执行顺序:5select1from2where3groupby4having6orderby

–二、分页查询–1.从第几页开始多少页(下标从0开始)SELECT**FROMempLIMIT0,3;–2.每页几条第几页==需要查看第几页-1)乘以第二个参数SELECTFROMempLIMIT10,5;–每页五条第三页(3-1)5SELECTFROMempLIMIT2,2;–每页2条第2页(2-1)2–3.查看工资最高的前十个职员信息SELECTFROMempORDERBYsalDESCLIMIT0,10;

主键约束:primarykey(默认就是唯一非空的)外键约束:用于在两个表之间建立关系,需要指定引用主表的哪一列。

唯一约束:unique非空约束:notnull

CREATETABLEemp( empnoINTPRIMARYKEYAUTO_INCREMENT,--主键约束 enameVARCHAR(20), jobVARCHAR(20), mgrint, hiredateDATE, salDOUBLE(7,2), commitdouble(5,2), deptnoINTNOTNULL --非空约束);--√添加唯一约束和非空约束ALTERTABLEexamMODIFYNAMEVARCHAR(21)UNIQUENOTNULL;–创建主表CREATETABLEdept(deptnoINTPRIMARYKEY,dnameVARCHAR(20),locVARCHAR(20));INSERTINTOdeptVALUES(10,‘餐饮部’,‘上海’),(20,‘销售部’,‘浙江’),(30,‘财务部’,‘北京’),(40,‘技术部’,‘深圳’);

为从表emp加外键

ALTERTABLEempADDFOREIGNKEY(deptno)REFERENCESdept(deptno);

THE END
1.MySQL中文网Mysql官网联系MySQL|登录|注册 MySQL HeatWave MySQL数据库服务是一个完全托管的数据库服务,可使用世界上最受欢迎的开源数据库来部署云原生应用程序。 它是百分百由MySQL原厂开发,管理和提供支持。 了解更多信息 ? MySQL 企业版 全面的高级功能、管理工具和技术支持,可实现高水平的 MySQL 可扩展性、安全性、可靠性和无故障http://mysql.p2hp.com/index.html
2.Mysql知识详解(内容非常丰富)mysql常用的引擎Read Uncommitted(读取未提交内容——脏读):在该隔离级别,所有事务都可以看到其他未提交事务的执行结果。本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少。读取未提交的数据,也被称之为脏读(Dirty Read)。 Read Committed(读取提交内容):这是大多数数据库系统的默认隔离级别(但不是MySQL默认的)。它满https://blog.csdn.net/a342874650/article/details/134985437
3.MySQL::MySQLDocumentationAccelerate query performance with HeatWave MySQL Query data in object storage and MySQL with HeatWave Lakehouse Automate the machine learning pipeline with HeatWave AutoML MySQL 8.4Reference ManualMySQL 8.4Release Notes MySQL Server & MySQL Cluster https://dev.mysql.com/doc/
4.MySQL是什么?架构是怎么样的?这次我们要加的中间层是 mysql。 mysql是数据和应用的中间层 什么是 mysql Mysql数据库,是一款存放和管理数据的软件, 它介于应用和数据之间,通过一些设计,将大量数据,变成一张张像 excel 的数据表。为应用提供创建(Create), 读取(Read), 更新(Update), 删除(Delete)等核心操作。 https://www.51cto.com/article/803939.html
5.了解数据库技术:SQLite与MySQL的比较让我们比较一下两个最流行的开源管理系统–MySQL与SQLite–详细说明它们是如何工作的,它们的根本区别,优点和缺点,最后,对于WordPress托管的网络应用来说,哪个更合适。 使用开源数据库的好处 什么是SQLite? 什么是MySQL? 用例分析 两者优点和缺点 哪个更适合WordPress? https://www.wbolt.com/sqlite-vs-mysql.html
6.MYSQL简介MYSQL数据库MYSQL品牌简介,十大品牌网为你介绍甲骨文(中国)软件系统有限公司旗下MYSQL品牌信息,包括品牌介绍、联系方式、主营产品、最新评论、点赞数量等,告诉你MYSQL数据库怎么样,致力于帮助你了解MYSQL真实有效的品牌相关信息。https://www.cnpp.cn/pinpai/4117067.html
7.PHP创建MySQL数据库数据库存有一个或多个表。创建数据库 CREATE DATABASE 语句用于在 MySQL 中创建数据库。 语法 CREATE DATABASE database_name 为了让 PHP 执行上面的语句,我们必须使用 mysql_query() 函数。此函数用于向 MySQL 连接发送查询或命令。 例子 在下面的例子中,我们创建了一个名为 "my_db" 的数据库: <?php $https://www.w3school.com.cn/php/php_mysql_create.asp
8.MySQL创建数据库及简单增删改查使用普通用户登陆 MySQL 服务器,你可能需要特定的权限来创建或者删除 MySQL 数据库,所以我们这边使用 root 用户登录,root 用户拥有最高权限。 在删除数据库过程中,务必要十分谨慎,因为在执行删除命令后,所有数据将会消失。 drop 命令删除数据库 drop 命令格式: https://www.jianshu.com/p/db57844594a1
9.MySQL创建数据库和创建数据表的操作过程Mysql使用create database 数据库名 character set utf8; 创建数据库并设置数据库的字符编码。 1 create database MyDB_two character set utf8; 直接创建的数据库,数据库的编码方式是 MySQL 默认的编码方式 latin1 (单字节编码) ,通常我们会在数据库中存放中文数据,所以最好把数据库的编码方式设置成 utf-8 ,这样https://www.jb51.net/article/266960.htm
10.AzureDatabaseforMySQL了解MySQL 数据库,它是一款面向应用开发人员的完全托管数据库服务。Azure 是一个可满足你所有数据库需求的托管服务提供商。https://azure.microsoft.com/zh-cn/services/mysql/
11.MySQL的安装和配置(超详细图文教程)「建议收藏」4.选择mysql数据库的大致用途,“Multifunctional Database(通用多功能型,好)”、“Transactional Database Only(服务器类型,专注于事务处理,一般)”、“Non-Transactional Database Only(非事务处理型,较简单,主要做一些监控、记数用,对MyISAM数据类型的支持仅限于non-transactional),按“Next”继续。 https://cloud.tencent.com/developer/article/2065168
12.mysqli类PHP:mysqlimysqli::$insert_id— 返回上次查询为 AUTO_INCREMENT 列生成的值 mysqli::kill— 让服务器杀死一个 MySQL 线程 mysqli::more_results— 检查批量查询中是否还有查询结果 mysqli::multi_query— 在数据库上执行一个或多个查询 mysqli::next_result— 为读取 multi_query 执行之后的下一个结果集做准备 https://www.php.net/manual/zh/class.mysqli.php
13.navicat修改版下载中文版navicatformysql下载Navicat Premium是一个可多重连接的数据库管理工具,它可让你以单一程序同时连接;Navicat for MySQL是一套专为 MySQL 设计的高性能数据库管理及开发工具。绿色资源网提供navicat for mysql修改版、navicat premium注册码、navicat premium mac版等,希望对大家有帮助! 其他数据库软件推荐:access、sql server、mysql、http://www.downcc.com/k/navicat/
14.MySQL中文文档MySQL中文网MySQL 5.1中文文档 第1章:一般信息 第2章:安装MySQL 第3章:教程 第4章:MySQL程序概述 第5章:数据库管理 第6章:MySQL中的复制 第7章:优化 第8章:客户端和实用工具程序 第9章:语言结构 第10章:字符集支持 第11章: 列类型 第12章: 函数和操作符 https://www.mysqlzh.com/