标签:test type change 数据段 row 创建 状态 权限 cos
1)创建数据库语句
# 创建数据库,数据使用默认编码方式 utf8mb4
# create database 数据库名;
> create database test;
Query OK, 1 row affected (0.04 sec)
# 创建数据库,指定数据编码方式
# create database 数据库名 character set 字符集;
> create database test character set gbk;
Query OK, 1 row affected (0.02 sec)
2)删除数据库语句
# 删除数据库
# drop database 数据库名;
> drop database test;
Query OK, 0 rows affected (0.05 sec)
# 删除数据库,如果数据库存在就删除
# drop database if exists 数据库名;
> drop database if exists test;
Query OK, 0 rows affected (0.01 sec)
3)显示所有数据库语句
# 显示所有数据库
> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| performance_schema |
| mysql |
| sys |
+--------------------+
4 rows in set (0.01 sec)
系统自动创建的数据库
4)显示数据库的创建信息语句
# 显示数据库具体信息
# show create database 数据库名;
> show create database test;
+----------+---------------------------------------------------------------------------------------------+
| Database | Create Database |
+----------+---------------------------------------------------------------------------------------------+
| test | CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci */ |
+----------+---------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
5)选择操作的数据库语句
# 选择操作的数据库
# use 数据库名;
> use test;
Database changed
6)显示正在操作的数据库语句
# 显示正在操作的数据库
> select database();
+------------+
| database() |
+------------+
| test |
+------------+
1 row in set (0.00 sec)
7)导出数据库语句
# 导出数据库,同时倒出数据库表结构和数据
# mysqldump -u 用户名 -p 数据库名 > 导出到的目标文件路径.sql;
$ mysqldump -u root -p test > /Users/qianchia/Desktop/test.sql;
Enter password:
# 导出数据库,只倒出数据库表结构
# mysqldump -u 用户名 -p -d 数据库名 > 导出到的目标文件路径.sql;
$ mysqldump -u root -p -d test > /Users/qianchia/Desktop/test.sql;
Enter password:
8)导入数据库语句
# 导入数据库/表
# source 导入的目标文件路径.sql;
> source /Users/qianchia/Desktop/test.sql;
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
...
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0
1)创建表语句
# 创建表
# create table 表名 (
列名称字段 数据类型(长度) 约束条件,
列名称字段 数据类型(长度) 约束条件
);
> create table student (
no int,
name varchar(20),
age int,
score int
);
Query OK, 0 rows affected (0.08 sec)
# 创建表,约束
> create table student (
no int unique, // 设置唯一约束
name varchar(20) not null, // 设置非空约束
age int,
score int
);
> create table student (
no int primary key, // 设置主键约束
name varchar(20),
age int,
score int
);
> create table student (
no int,
name varchar(20),
age int,
score int
primary key(no) // 设置主键约束
);
> create table student (
no int primary key auto_increment, // 设置主键自增约束
name varchar(20),
age int,
score int
);
> create table A (
ano int primary key,
aname varchar(20),
loc varchar(100)
);
> create table B (
bno int primary key,
bname varchar(20),
bano int,
# constraint 约束名称 foreign key(外键名称) references 源表(主键名称)
constraint fk_a_b foreign key(bano) references A(ano) // 设置外键约束
);
2)删除表语句
# 删除表
# drop table 表名;
> drop table student;
Query OK, 0 rows affected (0.07 sec)
# 删除表,如果表存在就删除
# drop table if exists 表名;
> drop table if exists student;
Query OK, 0 rows affected (0.06 sec)
3)显示所有表语句
# 显示所有表
> show tables;
+----------------+
| Tables_in_test |
+----------------+
| A |
| B |
| student |
+----------------+
3 rows in set (0.00 sec)
4)显示表的创建信息语句
# 显示表具体信息
> show create table student;
+---------+--------------------------------------------------------------------------------------------------+
| Table | Create Table |
+---------+--------------------------------------------------------------------------------------------------+
| student | CREATE TABLE `student` (
`no` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) NOT NULL,
`age` int(11) DEFAULT NULL,
`score` int(11) DEFAULT NULL,
PRIMARY KEY (`no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci |
+---------+--------------------------------------------------------------------------------------------------+
1 row in set (0.01 sec)
5)显示表的数据结构语句
# 显示表的数据结构
# desc 表名称;
> desc student;
+-------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+----------------+
| no | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(20) | NO | | NULL | |
| age | int(11) | YES | | NULL | |
| score | int(11) | YES | | NULL | |
+-------+-------------+------+-----+---------+----------------+
4 rows in set (0.01 sec)
6)重命名表语句
# 重命名表
# alter table 旧表名称 rename [to] 新表名称;
> alter table student rename [to] stu;
Query OK, 0 rows affected (0.02 sec)
# 重命名表
# rename table 旧表名称 to 新表名称;
> rename table student to stu;
Query OK, 0 rows affected (0.08 sec)
7)修改表的字符集语句
# 修改表的字符集
# alter table 表名称 cahracter set 字符集;
> alter table student character set gbk;
Query OK, 0 rows affected (0.05 sec)
Records: 0 Duplicates: 0 Warnings: 0
8)导出表语句
# 导出数据库指定的表,同时导出表结构和数据
# mysqldump -u 用户名 -p 数据库名 表名 > 导出到的目标文件路径.sql;
$ mysqldump -u root -p test student > /Users/haiqianj/Desktop/test.sql;
Enter password:
# 导出数据库指定的表,只导出表结构
# mysqldump -u 用户名 -p -d 数据库名 表名 > 导出到的目标文件路径.sql;
$ mysqldump -u root -p -d test student > /Users/haiqianj/Desktop/test.sql;
Enter password:
9)导入表语句
# 导入表/数据库
# source 导入的目标文件路径.sql;
> source /Users/qianchia/Desktop/test.sql;
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
...
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0
1)添加列语句
# 添加列,添加单列
# alter table
表名称
add [column]
列名称 类型 [约束] [first | after 列名称];
> alter table student add cla varchar(20);
Query OK, 0 rows affected (0.04 sec)
Records: 0 Duplicates: 0 Warnings: 0
# 添加列,添加多列
# alter table
表名称
add [column]
列名称 类型 [约束] [first | after 列名称],
add [column]
列名称 类型 [约束] [first | after 列名称],
...;
> alter table student add cla varchar(20), add addr varchar(100);
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
2)删除列语句
# 删除列,删除单列
# alter table
表名称
drop [column]
列名称;
> alter table student drop address;
Query OK, 0 rows affected (0.10 sec)
Records: 0 Duplicates: 0 Warnings: 0
# 删除列,删除多列
# alter table
表名称
drop [column]
列名称,
drop [column]
列名称,
...;
> alter table student drop class, drop address;
Query OK, 0 rows affected (0.11 sec)
Records: 0 Duplicates: 0 Warnings: 0
3)修改列名称语句
# 修改列名称,修改单列名称
# alter table
表名称
change [column]
旧列名称
新列名称 类型 [约束] [first | after 列名称];
> alter table student change cla class int;
Query OK, 0 rows affected (0.10 sec)
Records: 0 Duplicates: 0 Warnings: 0
# 修改列名称,修改多列名称
# alter table
表名称
change [column]
旧列名称
新列名称 类型 [约束] [first | after 列名称],
change [column]
旧列名称
新列名称 类型 [约束] [first | after 列名称],
...;
> alter table student change cla class int, change addr address varchar(100);
Query OK, 0 rows affected (0.10 sec)
Records: 0 Duplicates: 0 Warnings: 0
4)修改列属性语句
# 修改列属性,修改单列的字段类型及约束
# alter table
表名称
modify [column]
列名称 类型 [约束] [first | after 列名称];
> alter table student modify cla int;
Query OK, 0 rows affected (0.11 sec)
Records: 0 Duplicates: 0 Warnings: 0
# 修改列属性,修改多列的字段类型及约束
# alter table
表名称
modify [column]
列名称 类型 [约束] [first | after 列名称],
modify [column]
列名称 类型 [约束] [first | after 列名称],
...;
> alter table student modify cla int, modify addr varchar(200);
Query OK, 0 rows affected (0.10 sec)
Records: 0 Duplicates: 0 Warnings: 0
5)修改列顺序语句
after 列名称:放在指定列之后
注意:change、first、after column 这些关键字都属于 MySQL 在标准 SQL 上的扩展,在其它数据库中不一定适用。
标签:test type change 数据段 row 创建 状态 权限 cos
原文地址:https://www.cnblogs.com/QianChia/p/9185028.html