一、初涉MySQL
1.启动/停止MySQL服务
net start/stop mysql57(我安装的mysql版本是5.7.18,而且启动mysql要以管理员身份运行cmd)
2.登录MySQL
mysql -u root -p -P 3306 -h 127.0.0.1(root为用户名,3306端口,本地服务器,接下来提示输入密码)
3.退出登录MySQL
quit 或者exit或者\q
4.修改提示符
方法一:登录时加 --prompt 提示符
方法二:登陆后 prompt 提示符
\D完整的日期 \d当前数据库 \h服务器名称 \u当前用户
5.常用命令
SELECT VERSION();或者mysql -V;
SELECT NOW();
SELECT USER();
SHOW DATABASES;MySQL默认存在4个数据库
SHOW WARNINGS;
SHOW CREATE DATABASE db_name;查看创建数据库时的指令
6.命名规则
关键字和函数名称全部大写,数据库名称、表名称、字段名称全部小写
7.创建/删除/修改/查看数据库
SHOW CREATE DATABASE db_name;查看创建数据库时的指令
CREATE {DATABASE | SCHEMA} db_name [IF NOT EXISTS] db_name [DEFAULT] CHARACTER SET [=] character_name创建数据库
DROP DATABASE [IF EXISTS] db_name删除数据库
ALTER DATABASE db_name CHARACTER SET [=] character_name修改数据库的编码方式
二、数据类型与操作数据表
1.整型
TINYINT(1个字节)、SMALLINT(2个字节)、MEDIUMINT(3个字节)、INT(4个字节)、BIGINT(8个字节)
都分有符号(SIGNED)和无符号(UNSIGNED)
2.浮点型
FLOAT[(M,D)] 单精度,M是数字总位数,D是小数点后的位数
DOUBLE[(M,D)] 双精度
3.日期时间型
YEAR、TIME、DATE、DATETIME、TIMESTAMP实际开发中用得不多,因为存在跨时区问题,一般转化成数字表示
4.字符型
CHAR(M) 定长类型,需要M个字节内存,0<=M<=255
VARCHAR(M)变长类型,需要L+1个字节内存,L<=M且0<=M<=65535
TINYTEXT需要L+1个字节内存,L<2^8
TEXT需要L+2个字节内存,L<2^16
MEDIUMTEX需要L+3个字节内存,L<2^24
LONGTEXT需要L+4个字节内存,L<2^32
ENUM('v1','v2',...)枚举类型,需要1或2个字节内存,取决于枚举值的个数(最多65535个)
SET('V1','V2',...)组合类型,需要1,2,3,4或者8个字节,取决于成员的个数(最多64个成员),值可以是成员的任意排列组合
5.创建数据表
CREATE TABLE [IF NOT EXISTS] table_name(
col_name data_type,
...
)
6.查看数据表列表
SHOW TABLES [FROM db_name] [LIKE 'pattern' | WHERE expr]
7.查看数据表的结构
SHOW COLUMNS FROM tb_name
8.空值与非空
NULL与NOT NULL
9.自动编号 AUTO_INCREMENT
必须与主键一起使用,默认情况下起始值为1,增量为1
10.主键PRIMARY KEY
每张表只有一个主键,主键保证记录的唯一性,主键自动为NOT NULL,主键不一定与AUTO_INCREMENT一起使用
11.唯一约束UNIQUE KEY
保证记录的唯一性,一张表可以有多个唯一约束,可以为空值(NULL)