1、查看所有的数据库
show databases;
#输出:
#mysql> show databases;
#+--------------------+
#| Database |
#+--------------------+
#| information_schema |
#| mysql |
#| performance_schema |
#| sys |
#+--------------------+
为什么 Workbench 里面我们只能看到“demo”和“sys”这 2 个数据库呢?
这是因为,Workbench 是图形化的管理工具,主要面向开发人 员,“demo”和“sys”这 2 个数据库已经够用了。如果有特殊需求,比如,需要监控 MySQL 数据库各项性能指标、直接操作 MySQL 数据库系统文件等,可以由 DBA 通过 SQL 语句,查看其它的系统数据库
2、创建自己的数据库
create database 数据库名;
#创建atguigudb数据库,该名称不能与已经存在的数据库重名。
create database atguigudb
3、使用自己的数据库
use 数据库名;
#使用atguigudb数据库
use atguigudb;
说明:如果没有使用use语句,后面针对数据库的操作也没有加“数据名”的限定,那么会报“ERROR 1046(3D000): No database selected”(没有选择数据库)使用完use语句之后,如果接下来的SQL都是针对一个数据库操作的,那就不用重复use了,如果要针对另一个数据库操作,那么要重新use。
4、查看某个库的所有表格
show tables from 数据库名;
或者写成 show tables; 同一个数据库下
5、创建新的表格
create table 表名称(字段名 数据类型,字段名 数据类型);
create table student( id int, name varchar(20) #说名字最长不超过20个字符 );
6.查看一个表的数据
select * from 数据库表名称;
#查看学生表的数据 select * from student;
7、添加一条记录
insert into 表名称 values(值列表);
#添加两条记录到student表中
insert into student values(1,'张三');
insert into student values(2,'李四');
字符集的问题。
8、查看表的创建信息
show create table 表名称\G
#查看student表的详细创建信息
show create table student\G
1
2
3
Table: student
Create Table: CREATE TABLE `student` (
`id` int(11) DEFAULT NULL,
`name` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (0.00 sec)
53206
9、查看数据库和表的创建信息
show create database 数据库名;
#查看atguigudb数据库的详细创建信息
show create table 表名;
显示atguigudb数据库也不
10、删除表格
drop table 表名称;
#删除学生表
drop table student;
支持中文,字符集默认是latin1。
11.删除数据库
drop database dd;
12.展示字符编码的比较规则
show variables like 'collation_%';
13.查看编码命令
show variables like 'character_%';
show variables like 'collation_%';
4.2 MySQL的编码设置
MySQL5.7中
问题再现:命令行操作sql乱码问题
问题解决
步骤1:查看编码命令
show variables like 'character_%';
show variables like 'collation_%';
骤2:修改mysql的数据目录下的my.ini配置文件:在my.ini文件里找到[mysqld]
[mysql] #大概在63行左右,在其下添加
default-character-set=utf8 #默认字符集
1
[mysqld] # 大概在76行左右,在其下添加
character-set-server=utf8
collation-server=utf8_general_ci
步骤3:重启服务
步骤4:查看编码命令
MySQL8.0中
从MySQL 8.0开始,数据库的默认编码改为 utf8mb4 ,从而避免了上述的乱码问题。