MySQL的常用命令

show databases; 查看数据库系统里有那些数据库。

use test; 打开一个数据库。

show tables; 查看刚刚打开的数据库里有些什么 表;

show tables from mysql; 查看非所在库的表信息,用from关键字指定目标库。

select database(); 查看目前在那个库里。

演示一下SQL常用增、删、改、查,让大家有个感性的了解,后面要详细的讲!

create table student(id int , name varchar(4)); 创建一张表

desc student;查看表结构。

select * from student; 查看表里的记录。

insert into student(id,name) values (1,'小白'); 向表里插入一条记录值。

在Sql当中用select version();查看mysql的版本信息。

在Dos当中mysql --version 也是查看mysql版本信息。

查看数据库的编码:show variables like '%char%';

命令行中查询表的默认字符集:show create table 表名称;

修改表的默认字符集:ALTER TABLE 表名称 CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

命令行中查询数据库的默认字符集:show creat database test;.

修改数据库的默认字符集:ALTER DATABASE test DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

windows的cmd命令行访问student表

现在改从cmd命令行插入数据:

但直接在cmd中输入包含中文的insert语句时,mysql会报错(原因等会再说)

那就先写好一个sql脚本,再通过source命令导入就不会报错了

source xx.sql1

以上的案例估计就是大家经常会遇上的中文乱码问题了。

解决方案

在输入SQL语句前先设置编码:set names gbk ,再输入SQL

为什么这样设置就能正常显示utf-8编码的数据呢?

可以看到,client,connection和result的编码已经设置为gbk了,但server,database,system的编码还是utf-8!这就是说,虽然数据是使用utf-8编码存储的,但是客户端以及返回的结果集是gbk的,而此时cmd窗口的编码正好是gbk,因此该结果集能正确显示了。

相关推荐
笃行3503 小时前
数据库性能优化的五处内核改造,KingbaseES 配了四件诊断工具
数据库
非优秀程序员5 小时前
第02章 杭电的英语老师与一台服务器|《互联网产品恩仇录》
数据库·node.js·代码规范
SelectDB10 小时前
SelectDB 是哪个公司的?是国产数据库吗?一篇讲清飞轮科技与 Apache Doris 的关系
数据库
这个DBA有点耶10 小时前
库内计算推理:一条SQL背后的算子融合,和外挂方案差了几次网络往返
数据库·人工智能·sql
这个DBA有点耶12 小时前
函数索引的“完全一致”有多苛刻:写法、字符集、类型,差一处就失效
数据库·mysql·代码规范
星恒随风12 小时前
MySQL 从零入门(三):表的约束详解
linux·服务器·数据库·笔记·mysql
Alluxio13 小时前
Alluxio + OCI:为 AI 工作负载实现亚毫秒访问延迟与可扩展吞吐
运维·数据库·人工智能·分布式·缓存·ai·语言模型
数据库急诊室_阿哲16 小时前
一次加索引建议的复核记录:从报告到签字
数据库·ai数据库
青瓦梦滋17 小时前
Redis主从复制
服务器·数据库·redis·缓存·bootstrap
慧都小妮子18 小时前
Wyn商业智能国产数据库适配:数据接入、分析缓存与审计日志验证清单
数据库·数据分析·数据可视化·审计日志·商业智能