mysql字符集,insert,update,delete,select

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 发现有错误:数据太长了。//查看数据库的所有编码:show variables like 'character%';-----+| character_set_client     | utf8    设置客户端的字符集     || character_set_connection | utf8    设置连接的字符集     || character_set_database   | ut

发现有错误:数据太长了。
//查看数据库的所有编码:
show variables like 'character%';
-----+
| character_set_client     | utf8    设置客户端的字符集
     |
| character_set_connection | utf8    设置连接的字符集
     |
| character_set_database   | utf8 设置数据库的字符集
     |
| character_set_filesystem | binary    设置文件系统的字符集
     |
| character_set_results    | utf8 设置显示结果是使用的编码
     |
| character_set_server     | utf8 设置配置MySQL时设置的字符集
     |
| character_set_system     | utf8
     |
| character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.0\share\chars
ets\ |
+--------------------------+----------------------------------------------------
解决乱码的问题:
1、设置客户端的结果集
2、设置显示结果的字符集

1,set character_set_client=gbk;   使用的客户端编码
2,set character_set_results=gbk; 结果集的编码

创建一张a表
create table a
(
 id int,
 name varchar(20)
);

insert into a values(1,'aaa');
insert into a values('bbbb');//只想添加name时,要把a(name)写上。
insert into a(name) values('bbbb');
+------+------+
| id   | name |
+------+------+
|    1 | aaa  |
| NULL | bbbb |
+------+------+
实际上into也可以不写。
insert a values(2,'cccc');
insert a values(3,'dddd');

上面的等价下面的:
insert a value(4,'cccc'),(5,'dddd');

select * from employee;

将所有的员工的薪水修改为5000元
update employee set salary=5000;
将姓名为  zhangsan 的员工的薪水修改为3000元
update employee set salary=3000 where name='zhangsan';
将姓名为 lisi 的员工薪水修改为4000元,sex修改为female
update employee set salary=4000,gender='female' where name='lisi';
将xiaohong的薪水在原有的基础上增加1000元。
update employee set salary=salary+1000 where name='xiaohong';

set character_set_results=gbk;


3delete语句 删除数据
删除表中name为zhangsan 的记录
delete from employee where name='zhangsan';
删除表中的所有数据
delete from employee;

insert into employee
 (id,name,gender,birthday,salary,entry_date,resume)
 values(1,'zhangsan','male','1980-1-1',1000,'2000-3-16','good boy');

insert into employee
 (id,name,gender,birthday,salary,entry_date,resume)
 values(2,'lisi','male','1934-4-1',1000,'2010-3-16','good boy');

insert into employee
 (id,name,gender,birthday,salary,entry_date,resume)
 values(3,'xiaohong','female','1984-1-1',1000,'2008-3-16','good girl');

使用truncate删除表中的记录
truncate employee;  删除表中的记录。删除表在创建表
select * from employee;

insert into employee
 (id,name,gender,birthday,salary,entry_date,resume)
 values(1,'zhangsan','male','1980-1-1',1000,'2000-3-16','good boy');

insert into employee
 (id,name,gender,birthday,salary,entry_date,resume)
 values(2,'lisi','male','1934-4-1',1000,'2010-3-16','good boy');

insert into employee
 (id,name,gender,birthday,salary,entry_date,resume)
 values(3,'xiaohong','female','1984-1-1',1000,'2008-3-16','good girl');

select * from employee;
mysql> select * from employee;
+------+----------+--------+------------+--------+------------+-----------+
| id   | name     | gender | birthday   | salary | entry_date | resume    |
+------+----------+--------+------------+--------+------------+-----------+
|    1 | zhangsan | male   | 1980-01-01 |   1000 | 2000-03-16 | good boy  |
|    2 | lisi     | male   | 1934-04-01 |   1000 | 2010-03-16 | good boy  |
|    3 | xiaohong | female | 1984-01-01 |   1000 | 2008-03-16 | good girl |
+------+----------+--------+------------+--------+------------+-----------+


4、select 语句
column 指定列名
* 号代表查询所有列
From 指定查询哪张表
DISTINCT可选,值显示结果时,是否剔除重复数据。

student.sql
create table student
(
 id int,
 name varchar(20),
 chinese float,
 english float,
 math float
);
insert into student(id,name,chinese,english,math) values(1,'张小明',89,78,90);
insert into student(id,name,chinese,english,math) values(2,'李菁',67,53,95);
insert into student(id,name,chinese,english,math) values(3,'王五',87,78,77);
insert into student(id,name,chinese,english,math) values(4,'李一',82,98,92);
insert into student(id,name,chinese,english,math) values(5,'李来才',82,84,67);
insert into student(id,name,chinese,english,math) values(6,'张警报',55,85,45);
insert into student(id,name,chinese,english,math) values(1,'黄蓉',75,65,30);

//查询所有的学生的信息
select * from student;

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1月前
|
关系型数据库 MySQL 存储
【MySQL】——数据类型及字符集
【MySQL】——数据类型及字符集
165 0
【MySQL】——数据类型及字符集
|
1月前
|
关系型数据库 MySQL
【MySQL】——Select查询语句知识点练习(其一)
【MySQL】——Select查询语句知识点练习(其一)
36 0
|
2月前
|
SQL 关系型数据库 MySQL
MySQL技能完整学习列表3、SQL语言基础——1、SQL(Structured Query Language)简介——2、基本SQL语句:SELECT、INSERT、UPDATE、DELETE
MySQL技能完整学习列表3、SQL语言基础——1、SQL(Structured Query Language)简介——2、基本SQL语句:SELECT、INSERT、UPDATE、DELETE
49 0
|
30天前
|
存储 人工智能 搜索推荐
详解MySQL字符集和Collation
MySQL支持了很多Charset与Collation,并且允许用户在连接、Server、库、表、列、字面量多个层次上进行精细化配置,这有时会让用户眼花缭乱。本文对相关概念、语法、系统变量、影响范围都进行了详细介绍,并且列举了有可能让字符串发生字符集转换的情况,以及来自不同字符集的字符串进行比较等操作时遵循的规则。对于最常用的基于Unicode的字符集,本文介绍了Unicode标准与MySQL中各个字符集的关系,尤其详细介绍了当前版本(8.0.34)默认字符集utf8mb4。
|
1月前
|
存储 人工智能 关系型数据库
详细介绍TiDB 与 MySQL 中的常用字符集及排序规则
一文理清 TiDB 与 MySQL 中的常用字符集及排序规则
115 6
|
2月前
|
SQL 关系型数据库 MySQL
MySQL技能完整学习列表10、数据导入和导出——1、数据导入(LOAD DATA, mysqldump)——2、数据导出(SELECT ... INTO OUTFILE, mysqldump)
MySQL技能完整学习列表10、数据导入和导出——1、数据导入(LOAD DATA, mysqldump)——2、数据导出(SELECT ... INTO OUTFILE, mysqldump)
48 0
|
15天前
|
存储 关系型数据库 MySQL
MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT *、分页查询的优化、合理使用连接、子查询的优化)(上)
MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT *、分页查询的优化、合理使用连接、子查询的优化)(上)
|
1月前
|
关系型数据库 MySQL
【MySQL】——Select查询语句(其二)
【MySQL】——Select查询语句(其二)
18 0
|
2月前
|
存储 关系型数据库 MySQL
【2024】新建mysql数据库,如何选择字符集和排序规则
【2024】新建mysql数据库,如何选择字符集和排序规则
145 1
|
2月前
|
关系型数据库 MySQL 数据库
mysql如何正确的删除数据(drop,delete,truncate)
mysql如何正确的删除数据(drop,delete,truncate)
36 0