MySQL数据库基础知识_MySQL数据库的特点
文章目录
Mysql使用时的注意事项
- 每日一条数据库操作语句都应该以
分号 ;
结尾,因为mysql支持换行操作 - mysql数据库对大小写不敏感,大小写皆可,通常关键字使用大写表示
- mysql数据库中哭的名称应该以英文字符或者一些符号起始,但是不允许以数字起始
- mysql数据库中哭的名称、表的名称、字段的名称都不能使用mysql关键字,比如create、database;如果非要使用,那就用反引号括起来
库的操作
查看mysql中的所有库:show databases; 创建库:create database 库名称;—-》create database if not exists 库名称;如果不存在该库,则创建 删除库:drop database 库名称; 选择使用数据库:use 库名称; 显示当前使用的数据库:select database();
数据类型
数值类型
MySQL支持所有标准SQL数值数据类型。
这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC)
,以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)
。
关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。
BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。
作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。下面的表显示了需要的每个整数类型的存储和范围。
日期和时间类型
表示时间值的日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR
每个时间类型有一个有效值范围和一个”零”值,当指定不合法的MySQL不能表示的值时使用”零”值。
字符串类型
字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET
注意:char(n) 和 varchar(n) 中括号中 n 代表字符的个数,并不代表字节个数,比如 CHAR(30) 就可以存储 30 个字符。 CHAR 和 VARCHAR 类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。 BINARY 和 VARBINARY 类似于 CHAR 和 VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。这说明它们没有字符集,并且排序和比较基于列值字节的数值值。 BLOB 是一个二进制大对象,可以容纳可变数量的数据。有 4 种 BLOB 类型:TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。它们区别在于可容纳存储范围不同。 有 4 种 TEXT 类型:TINYTEXT、TEXT、MEDIUMTEXT 和 LONGTEXT。对应的这 4 种 BLOB 类型,可存储的最大长度不同,可根据实际情况选择。
表的操作
显示库中所有的表:show tables; 创建表:create table if not exists tb_stu(id int,name varchar(3),age int, birthdatetime);
查看表结构:desc tb_stu;
删除表:drop table tb_stu;
表中数据的增删改查基础
插入数据:insert
指定列插入:可以指定单独个一个或几个列信息进程插入,并且前缀列信息 insert [into] tb_stu(id,name) values (1,“韩云溪”); 全列插入:可以省略前缀的列信息,按照列顺序插入所有列的数据 insert [into] tb_stu values (1,“韩云溪”,21,“2000-03-19 12:00:00”); 多行插入: insert [into] tb_name values(val1,val2…),(val1,val2…),…; insert [into] tb_stu values (3,“三三”,17,now()),(4,“四四”,18,now());
查询数据:select
查询指定表中所有数据:select * from tb_name;
指定列查询:select name,birth from tb_stu;
排序查询:select * from tb_stu order by age [asc]/desc;按照年龄排序查询 默认为asc升序查询,desc为降序查询
多列排序:在第一列相同的情况下针对第二列进行排序:select * from tb_stu order by age ,id desc;
分页查询:通常搭配排序一起使用 select * from tb_stu limit m offset n;—–分页查询,每页显示m条数据,偏移到第n条开始显示m条数据(即从第n条起,显示一页)
查询字段为表达式: select name,id+age from tb_stu;—-按照name和id+age的值分列查询
查询时,字段别名的使用: select name,id+age [as] total from tb_stu; —–给id+age起了个别名叫total,as可以省略
去重: select distinct age from tb_stu ;—–根据age查询,并对age去重
条件查询
按照一定的限制条件进行查询,限制条件通过where子句给出
例如:按照id>1的限制条件进行查询:select * from tb_stu where id>1;
where子句涉及的运算符:
另外还有:> = <(大于、等于、小于)可以和NULL进行比较 is NULL/is not NULL 可以用来判断是否为空
IN的使用:判断查询的数据是否是给予的多个选项之一 例如:select * from tb_stu where name in(“韩云溪”,“夏紫藤”);—–查询名字为韩云溪或夏紫藤的项,符合则显示,不符合则忽略
between A and B 的使用:查询范围介于AB两者之间项 select * from tb_name where id between 1 and 3; —–查询id介于1和3之间的项
LIKE 模糊匹配的使用:查询一个数据看起来像某个条件 select * from tb_stu where name like ‘韩%’;—–查询表中姓名以韩开头的项,%为通配符
逻辑运算符的使用:与and、 或or、 非not select * from tb_stu where age>17 and age<22;—–查询表中年龄大于17并且小于22的项
修改数据:update
update tb_name set fields1=val1,fields2=val2 where condition;—-尤其注意不要忘了where限制条件,否则整张表的该列数据都会更改
删除数据:delete
delete from tb_name where condition;—-尤其注意不要忘了where限制条件,否则整张表的数据都会被删除
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/171519.html原文链接:https://javaforall.cn
相关文章
- 【网站建设】Linux上安装MySQL - 12条命令搞定MySql
- MySQL:快速、可靠的H2数据库解决方案(h2数据库mysql)
- PHP与MySQL融合,尽享轻松开发(php与mysql整合)
- 如何创建MySQL数据库轻松操作指南(怎么创建mysql数据库)
- MySQL数据库容量超量:求救之路(mysql数据库满了怎么办)
- MySQL如何恢复误删除数据(mysql恢复误删除数据)
- MySQL:数据库用户的最佳选择(数据库用户mysql)
- MySQL:权衡价格和功能的最佳选择(mysql商用价格)
- MySQL字段操作:一点都不难!(mysql字段id)
- MySQL数据库强大的管理功能(mysql-a)
- 查询MySQL状态:简易操作指南(如何查询mysql状态)
- 表查询 MySQL 用户表:在深度审核中(查询mysql用户)
- 优化MySQL并发配置,提升数据库性能(mysql并发配置)
- 「MySQL入门教程:快速学习数据库基础知识」(mysql的教程)
- 从数据库技术角度看待Mysql优化(mysql优化的看法)
- 高效监控MySQL数据库 一个必备的脚本(mysql数据库监控脚本)
- 解析MySQL的多用户功能,实现更高效的数据库管理!(mysql多用户)
- MySQL查询:找出所有节点(mysql查询所有节点)
- 如何应对MySQL连接数不断增加的问题?(mysql连接数一直增加)
- 简单易懂:MySQL数据库编辑教程(mysql怎么编辑数据库)
- MySQL自动备份数据库,数据安全有保障(mysql定时备份数据)
- 如何在MySQL中获取今天的日期(mysql中今天的日期)
- MySQL中如何实现Top分页查询(mysql中top分页)
- MySQL中如何进行IP地址转换(mysql中ip转换)
- 数据库CSV快速导入MySQL数据库(csv插入到mysql)
- 命令行下支持MySQL数据库管理(cmd推出mysql>)
- 学会使用CMD和MySQL命令行,让工作效率提升一个档次(cmd mysql命令行)
- net与Mysql实现数据库集成(.net集成mysql)
- 不停机实现MySQL索引建立(mysql不停机建立索引)
- MySQL去重复记录的方法(mysql下去重复记录)
- MySQL批量执行问题解决方案(mysql不能批量执行)
- MySQL数据库无法导出数据,如何解决(mysql 不能导出)