一、数据库的操作
===========================================================================
注意在客户端每次输入完语句一定要加;
1.1显示数据库
show databases;
1.2创建数据库
--格式 create database 【数据库名称】; create database test;
注意:不能创建同名的数据库
1.3使用数据库
--格式 use【数据库名】 use test;
注意:每次要操作数据库中的表时,必须要先执行 use【数据库名】语句
1.4删除数据库
--格式 drop database 【数据库名】; drop database test;
数据库删除后里面的表和数据全被删除了。
二、常用的数据类型
============================================================================
2.1数值类型
整数和小数类型
| 数据类型 (整数) | 大小及说明 |
| — | — |
| bit[(M)] | M指定位数,默认为1 |
| tinyint | 1字节 |
| smallint | 2字节 |
| int | 4字节 |
| bigint | 8字节 |
| 数据类型(小数) | 大小及说明 |
| — | — |
| float(M,D) | 4字节(单精度M是有效数字位数,D是小数位数,会发生精度丢失) |
| double(M,D) | 8字节 |
| decimal(M,D) | M/D最大值+2(使用最多,M是有效数字位数,D是小数位数)较准确,但是计算慢 |
| numeric(M,D) | M/D最大值+2 |
2.2字符串类型
| 数据类型 | 大小及说明 |
| — | — |
| varchar(size) | 0~65535字节 (size是根据需求去定义了,字符串长一点就定义大一点,短一点就定义小一点) |
| text | 0~65535字节 |
| mediumtext | 0~16777215字节 |
| blob | 0~65535字节 |
2.3日期类型
| 数据类型 | 大小及说明 |
| — | — |
| datatime | 8字节 范围使从1000到9999年,不会进行时区的检索及转换 |
| timestamp(时间戳) | 4字节 范围使从1970到2038年,自动检索当前时区并进行转换 |
时间戳也是当前计算机存储和表示时间的基本方式,因为其空间小,并且方便计算
三、表的操作
=========================================================================
需要操作数据库中表使,需要先使用该数据库
3.1查看表结构
--格式 desc 【表名】 desc test;
注意:没有table 关键字
3.2创建表
--格式 create table 【表名】; create table test;
3.3显示表
show tables;
注意:要加s
3.4删除表
--格式 drop table 【表名】; drop table test;
例子:定义一个图书表内有 图书名称、作者名字、价格、种类。
create database test; --创建一个数据库 use test; --选中test数据库 进行操作 create table books(bookname varchar(64),bookauthor varchar(64),bookprice decimal(4,2),category varchar(32)); --创建图书名称(字符串类型)、作者名字(字符串类型)、价格(4位有效数字,小数点后有两位)、种类(字符串类型)。
一个很简单的图书表,还没进行增删改查。
四、MySQL表的增删改查
================================================================================
4.1增(插入)
--格式 --insert [into] 【表名】 valuse; 全列插入 [into] 可省略 --insert [into] (字段名字) valuse; 指定列(字段名字)插入 [into] 可省略
1.单行数据全列插入
insert into books values ('平凡的世界','路遥',79.99,'长篇小说');
2.多行数据全列插入
insert into books values ('骆驼祥子','老舍',68.99,'长篇小说'), ('许三观卖血记','余华',49.99,'长篇小说');
3.单行数据指定列插入
insert into books (bookname,bookauthor,bookprice)values ('白鹿原','陈忠实',72.80); insert into books (bookname,bookprice,category)values ('计算机组成原理',72.80,'计算机类');
注意插入指定列元素时一定要和指定列的类型相匹配。
4.2查询
--格式 select * from 【表名】; select * from books;
--格式 select (指定字段) from 【表名】; select bookname from books;
指定书名:
-- 格式 selcet (指定字段)+表达式 from 【表名】; select bookname,bookprice+10 from books;
在每个书的价格上都加上10元
--格式 select (字段) [as] 别名 from 【表名】;
新增折扣属性
select bookprice*(discount/100) as declineprice from books; --优惠了多钱
使用distinct 关键字对某列数据去重
去重优惠幅度为10 的
--格式 select distinct (字段名称) from 【表名】
使用关键字 order by
asc 为升序 (从小到大)
desc 为降序 (从大到小)
默认为ASC
--格式 : select (要显示的字段名称) from 【表名】 order by (要排序的字段) (asc)//可省略asc -- select (要显示的字段名称) from 【表名】 order by (要排序的字段) desc //降序
比较运算符:
现在其实从大厂招聘需求可见,在招聘要求上有高并发经验优先,包括很多朋友之前都是做传统行业或者外包项目,一直在小公司,技术搞的比较简单,没有怎么搞过分布式系统,但是现在互联网公司一般都是做分布式系统。
所以说,如果你想进大厂,想脱离传统行业,这些技术知识都是你必备的,下面自己手打了一份Java并发体系思维导图,希望对你有所帮助。
CodeChina开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频】
表名】 order by (要排序的字段) (asc)//可省略asc
– select (要显示的字段名称) from 【表名】 order by (要排序的字段) desc //降序
![在这里插入图片描述](https://www.www.zyiz.net/i/ll/?i=20210530173537661.png) ### []( )4.2.7条件查询 比较运算符: # 最后 现在其实从大厂招聘需求可见,在招聘要求上有高并发经验优先,包括很多朋友之前都是做传统行业或者外包项目,一直在小公司,技术搞的比较简单,没有怎么搞过分布式系统,但是现在互联网公司一般都是做分布式系统。 所以说,如果你想进大厂,想脱离传统行业,这些技术知识都是你必备的,下面自己手打了一份Java并发体系思维导图,希望对你有所帮助。 **[CodeChina开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频】](https://codechina.csdn.net/m0_60958482/java-p7)** ![](https://www.www.zyiz.net/i/ll/?i=img_convert/d8c9b612ad20b889af080d1480d0bc3f.png)