通过docker启动mysql镜像,进入mysql>终端,链接mysql,之后进行增删改查
1、启动mysql镜像,可以通过两个命令
一、新建容器之后,直接进入 docker run -it --name mysql_test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql 二、启动容器之后,通过exec进入 docker exec -it mysql_test /bin/bash 注: mysql_test 为容器名称 it(d)其中d表示不进入容器
2、进入mysql>之后链接mysql
mysql -u root -p
3、链接之后,可以对mysql进行一系列操作
一、创建数据库 create BATABASE <数据库名称>; 二、删除数据库 drop database <数据库名称>;
注:
1、创建完成之后,刷新可以看到新建的库(当时没有刷新,以为有问题搞了半天)
2、切记结尾‘ ;’分号一定要加,结束语句
4、选择库(选择完成之后,后续操作都将在已选的库中执行)
use <数据库名称>; 执行完此命令,会出现Database changed,表示使用成功
5、选择完数据库之后,创建表
CREATE TABLE table_name (column_name column_type);
其中:column_name表示列名,column_type表示类型
例如:
CREATE TABLE IF NOT EXISTS runoob_tbl( -> runoob_id INT NOT NULL AUTO_INCREMENT, -> runoob_title VARCHAR(100) NOT NULL, -> runoob_author VARCHAR(40) NOT NULL, -> submission_date DATE, -> PRIMARY KEY ( runoob_id ) -> )ENGINE=InnoDB DEFAULT CHARSET=utf8;
- IF NOT EXISTS 表示一个判断语句(如果没有runoob_tbl表,则创建)
- 如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
- AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
- PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。
- INT:数字类型,VARCHAT:可变的长字符串,详细查看:https://www.runoob.com/mysql/mysql-data-types.html
- ENGINE 设置存储引擎,CHARSET 设置编码。
-
MySQL命令终止符为分号 ;
-
-> 是换行符标识,不要复制
6、建完表之后,查看表
show tables;
7、查看表中具体内容
desc 表名;
8、删除表
DROP TABLE 表名
9、插入数据
INSERT INTO 表名 (字段1,字段2,...字段n) VALUES (值1,值2,...值n)
其中:字段1、字段2等对应的表头名称下设置的key,值1、值2是key对应的值
10、查询数据
SELECT column_name1, column_name2 FROM 表名 [WHERE 条件] [LIMIT N][ OFFSET M] 如: SELECT name, age FROM user_table WHERE id=4 LIMIT 1
注:
- column_name:表示查询的字段(表的列名即key)。
- 你可以使用 WHERE 语句来包含任何条件。
- 你可以通过OFFSET指定SELECT语句开始查询的数据偏移量。默认情况下偏移量为0。
- 查询语句中你可以使用一个或者多个表,表之间使用逗号(,)分割,并使用WHERE语句来设定查询条件。
- SELECT 命令可以读取一条或者多条记录。
- 你可以使用星号(*)来代替其他字段,SELECT语句会返回表的所有字段数据
- 你可以使用 LIMIT 属性来设定返回的记录数。
11、更新数据
UPDATA 表名 SET key=值,key=值 [WHERE 条件] 如: UPDATA user_table SET name='张三' WHERE id=4
12、删除数据
DELETE FROM 表名 [WHERE 条件] 如: DELETE FROM user_table WHERE id=4
注:
- 如果没有where语句的话,mysql表示删除所有数据
- where可以指定任何条件
总结:
1、以上步骤可以简单的对数据进行增删改查,
2、以上命令来自“菜鸟教程”,只总结到了删除数据这一块。如果需要查看其他命令请参考:https://www.runoob.com/mysql/mysql-clone-tables.html。