- 登录MySQL
## 默认用户名<root>,-p 是密码,
mysql -h 127.0.0.1 -u <用户名> -p<密码>
mysql -D 数据库名 -h 主机名 -u 用户名 -p
mysql -h <host> -P <端口号> -u <user> -p [db_name]
mysql -h <host> -u <user> -p [db_name]
- 查看 MySQL 信息
# 显示当前mysql的version的各种信息
mysql> status;
# 显示当前mysql的version信息
mysql> select version();
# 查看 MySQL 端口号
mysql> show global variables like 'port';
数据库DATABASE
- 创建数据库
CREATE DATABASE db ;
- 列出数据库
SHOW DATABASES;
- 切换到数据库
USE db;
- 删除数据库
DROP DATABASE db;
表 Table
ps t 指数据库名
- 列出当前数据库所有的表
SHOW TABLES;
- 表的列表字段
SHOW FIELDS FROM t;
- 显示表格结构
DESC t;
- 显示创建表sql
SHOW CREATE TABLE t;
- 删除表中的所有数据
TRUNCATE TABLE t;
- 删除表
DROP TABLE t;
查看 MySQL 信息
# 显示当前mysql的version的各种信息
mysql> status;
# 显示当前mysql的version信息
mysql> select version();
# 查看 MySQL 端口号
mysql> show global variables like 'port';
索引
在t表的c1和c2上创建索引
CREATE INDEX idx_name
ON t(c1,c2);
在t表的c3、c4上创建唯一索引
CREATE UNIQUE INDEX idx_name
ON t(c3,c4)
删除索引
DROP INDEX idx_name
MySQL 数据类型
CHAR String (0 - 255)
VARCHAR String (0 - 255)
TINYTEXT String (0 - 255)
TEXT String (0 - 65535)
BLOB String (0 - 65535)
MEDIUMTEXT String (0 - 16777215)
MEDIUMBLOB String (0 - 16777215)
LONGTEXT String (0 - 4294967295)
LONGBLOB String (0 - 4294967295)
ENUM One of preset options
SET Selection of preset options
时间相关
DATE yyyy-MM-dd
TIME hh:mm:ss
DATETIME yyyy-MM-dd hh:mm:ss
TIMESTAMP yyyy-MM-dd hh:mm:ss
YEAR yyyy
新建修改表~
创建一个包含三列的新表
CREATE TABLE t (
id INT,
name VARCHAR DEFAULT NOT NULL,
price INT DEFAULT 0
PRIMARY KEY(id)
);
从数据库中删除表
DROP TABLE t ;
向表中添加新列
ALTER TABLE t ADD column;
从表中删除列c
ALTER TABLE t DROP COLUMN c ;
添加约束
ALTER TABLE t ADD constraint;
删除约束
ALTER TABLE t DROP constraint;
将表从t1重命名为t2
ALTER TABLE t1 RENAME TO t2;
将列c1重命名为c2
ALTER TABLE t1 RENAME c1 TO c2 ;