mysql从入门到入土(一)
环境
centos7,mariadb5.5.56
数据库基础操作
查看数据库
默认有四个库
1 |
|
创建数据库
aab是数据库的名字
1 |
|
切换(使用)数据库
切换至aab数据库
1 |
|
删除(丢弃)数据库
drop database [if exists] 数据库名;
if exists 为可选,判断是否存在,如果不存在则会抛出异常
1 |
|
表基础操作
查看表
因为目前还没有表,所以返回了empty set
1 |
|
创建表
create table 表格名(列名1 类型,列名2 类型,列名3 类型);
1 |
|
扩展—常用数据类型
整数型:tinyint, smallint, mediumint, int, bigint
小数型:float, double, decimal, real
字符型:char, varchar
日期时间型: date, datetime, time, timestamp, year
备注型:tinytext, text, mediumtext, longtext
扩展—char与varchar的区别
首先明确的是,char的长度是不可变的,而varchar的长度是可变的,定义一个char[10]和varchar[10],如果存进去的是‘abcd’,那么char所占的长度依然为10,除了字符‘abcd’外,后面跟六个空格,而varchar就立马把长度变为4了,取数据的时候,char类型的要用trim()去掉多余的空格,而varchar是不需要的。
char的存取数度还是要比varchar要快得多,因为其长度固定,方便程序的存储与查找;但是char也为此付出的是空间的代价,因为其长度固定,所以难免会有多余的空格占位符占据空间,可谓是以空间换取时间效率,而varchar是以空间效率为首位的。char的存储方式是,对英文字符(ASCII)占用1个字节,对一个汉字占用两个字节;而varchar的存储方式是,对每个英文字符占用2个字节,汉字也占用2个字节,两者的存储数据都非unicode的字符数据。
查看表结构
show columns from 表名;
1 |
|
删除表
drop table [if exists] 表名;
if exists 为可选,判断是否存在,如果不存在则会抛出异常
注意:删除具有主外键关系的表时,要先删子表(从表),后删主表
1 |
|