目录
MYSQL的使用演示
- use 数据库名;
#使用dbtest数据库
use dbtest;
说明:如果没有使用use语句,后面针对数据库的操作也没有加“数据名”的限定,那么会报"ERROR 1046(3D000); No database selected"(没有选择数据库)
使用完use语句之后,如果接下来的SQL都是针对一个数据库操作的,那就不用重复use了,如果要针对另外一个数据库操作,那么要重写use。
- 查看某个库的所有表格
- show tables;#要求前面要有use 某个数据库的语句
- show tables from 数据库名;
- 创建新的表格(前提是要用use打开要加到的数据库,这样才能把表加到你需要加入到的数据库里面去)
create table 表名称(字段名 数据类型,字段名 数据类型);
说明:如果是最后一个字段,后面就用逗号,因为逗号的作用是分割每个字段。
#创建学生表
create table student(id int,name varchar(20));#说明名字的最长不超过20个字符
- 查看一个表的数据(前提是要使用use打开所要查询的表所属于的数据库)
select * from 数据库表名称;
#查看学生表的数据
select * from student;
- 添加一条记录
insert into 表名称 values(值列表);
#添加两条记录到student表中
insert into student values(1,"张三");
insert into student values(2,"李四");
如果mysql的版本是5.7的,那么在使用中文的时候,就会报错,但8.0的不会报错
这是属于字符集的问题
- 查看表的创建信息
show create table 表名称\G
#查看student表的详细信息
show create table student\G
命令行操作sql乱码问题
先停止服务,再修改my.ini文件,再重新启动服务
问题解决:
步骤一:查看编码命令
show variables like 'character_%';使用这个代码操作后,可看到database和server都是用的latin1进行编码,所以不支持中文
show variables like 'collation_%';
步骤二:修改mysql的数据目录下的my.ini配置文件
[mysql] #大概在63行左右,在其下添加
...
default-character-set=utf8 #默认字符串
[mysqld] #大概在76行左右,在其下添加
...
character-set-server=utf8
collation-server=utf8_general_ci
注意:建议修改配置文件使用notepad++等高级文本编辑器,使用记事本等软件打开修改后可能会导致文件编码修改为“含BOM头”的编码,从而服务重启失败。
步骤一二都操作完后,使用步骤一的代码再去查看,可看到这两个数据库的编码方式都发生了变化
现在已经把创建数据库的编码方式改了,但是原来创建的那个数据库还是用的latin,这时候我们还是会出现乱码的情况,所以要重新创建一个数据库或者是表,这样就会以新的编码方式进行编码。当然,不重新创建也是可以的
MYSQL使用例子(8.0版本)