数据库对象:存储,管理和使用数据的不同结构形式,如:表、视图、存储过程、函数、触发器、事件等。
数据库:存储数据库对象的容器。
数据库分两种:
①系统数据库(系统自带的数据库):不能修改,不能删除
information_schema:存储数据库对象信息,如:用户表信息,列信息,权限,字符,分区等信息。
performance_schema:存储数据库服务器性能参数信息。
mysql:存储数据库用户权限信息。
test: 任何用户都可以使用的测试数据库。
②用户数据库(用户自定义的数据库):一般的,一个项目一个用户数据库。
1.2 查看和选择数据库①查看数据库服务器存在哪些数据库:
show databases;
②操作具体的数据库:
use mysql;(注:mysql为具体的数据库名)
③查看某个数据库中所有的表:
Show tables;(注:查看的是当前使用的数据库中的所有表,即必须先进入这个数据库)
1.3 创建和删除数据库①创建指定名称的数据库:
create database testdatabase;(注:testdatabase即为要创建的数据库的相对于名称)
②删除数据库:
drop database testdatabase;
1.4数据库存储引擎的介绍MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的都使用不同的存储机制、索引技巧、锁定水平并且最终提供不同的功能和能力。
通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。
事务:针对于一组操作,要么都成功 要么都失败。
MyISAM:拥有较高的插入,查询速度,但不支持事务,不支持外键。
InnoDB:支持事务,支持外键,支持行级锁定,性能较低。
InnoDB 存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但对比MyISAM,处理效率差,且会占用更多的磁盘空间以保留数据和索引。
2. MySQL常用列类型 2.1 查看表结构分析列类型desc db; (注:db指当前所进入的数据库中的想查看的表)
2.2 整型最常用的整数类型:
INT/BIGINT
2.3 小数类型最常用的小数类型:
FLOAT[(s,p)] 、DOUBLE[(s,p)]
小数类型,可存放实型和整型 ,精度(p)和范围(s),如:double(5,2): 整数和小数一共占5位.其中小数占2位.不够精确。
精确的小数类型:
DECIMAL(比如银行 对小数要求比较高情况下使用)
BIGDECIMAL 高精度类型,金额货币优先选择
2.4 字符类型常用字符类型:
char(size) 定长字符
0 - 255字节,size指N个字符数,若插入字符数超过设定长度,会被截取并警告。
varchar(size) 变长字符
0 -255字节,从MySQL5开始支持65535个字节,若插入字符数超过设定长度,会被截取并警告。(不是越长越好,压缩很耗费时间)
char和varchar长度都是255,那char 和 varchar 的区别:
比如 定义char(100),若字符只是占了2个,其他98个也是占用;
char好处:大小固定,不用压缩空间,速度更快一些;
而定义varchar(100),如果只占2个,那它总共就占2个;
保存超长字符类型:
TEXT系列类型,可以保存文章的纯文本,一般用于存储大量的字符串。
2.5 日期类型常用的日期时间类型:
DATE(年月 日)
DATETIME(年月日,时分秒)
TIMESTAMP(时间戳--范围19700101080001 - 203801191111407 基本不会用它,了解)
TIME和YEAR
注意:在MySQL中,日期时间值使用单引号引起来。
2.6二进制类型为什么存放二进制?