【云贝学院】腾讯云TDSQL-数据库字符集

【云贝学院】云贝学院TDSQL TCP认证课程已上线,学院有不定期公开课 需要进讨论群的同学可以加老师微信:19941464235

作者:潘峰

--显示数据库支持的字符集

show char set;

 

1.针对每一种声明支持的字符集(支持的字符集应当包含utf8),创建一张表,并测试:

--根据show char set 执行的结果 选如下字符集创建表

CREATE TABLE `test` (
  `id`    int auto_increment  primary key,
  `name` binary(16),
  `gbk` varchar(2) CHARACTER SET gbk DEFAULT NULL,
  `utf8` varchar(2) CHARACTER SET utf8 DEFAULT NULL,
  `latin_utf8` varchar(6) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

a)测试增删改查操作;

insert into test (name,gbk,utf8,latin_utf8) values ('liudehua','ab','cd','df');
insert into test (name,gbk,utf8,latin_utf8) values ('liudehua','ab','cd','df');
insert into test (name,gbk,utf8,latin_utf8) values ('zhangxueyou','ef','c1','ji');
​
​
delete from test where latin_utf8='ji';
select * from  test;
+----+------------------+------+------+------------+
| id | name             | gbk  | utf8 | latin_utf8 |
+----+------------------+------+------+------------+
|  1 | liudehua         | ab   | cd   | df         |
|  2 | liudehua         | ab   | cd   | df         |
+----+------------------+------+------+------------+
​
 update test set utf8='中国' where id = 2 and utf8='cd';
select * from  test;
+----+------------------+------+--------+------------+
| id | name             | gbk  | utf8   | latin_utf8 |
+----+------------------+------+--------+------------+
|  1 | liudehua         | ab   | cd     | df         |
|  2 | liudehua         | ab   | 中国   | df         |
+----+------------------+------+--------+------------+

b)对于支持utf8、gbk等含中文的情况,测试汉字“中国”增删改查操作;

insert into test (name,gbk,utf8,latin_utf8) values ('中国','中国','中国',_latin1'中国');
insert into test (name,gbk,utf8,latin_utf8) values ('中国','中国','中国',_latin1'中国');
delete from test where utf8='中国' and id =4;
update test set utf8='日本',gbk='日本' where gbk='中国' and utf8='中国';
select * from  test;
+----+------------------+--------+--------+---------------+
| id | name             | gbk    | utf8   | latin_utf8                   |
+----+------------------+--------+--------+---------------+
|  1 | liudehua         | 日本   | 日本   | df                        |
|  5 | 中国                | 日本   | 日本   | 中国                |
+----+------------------+--------+--------+---------------+

c)对于支持查询二进制值的情况,测试查询汉字“中国”的编码值,确定以正确的字符集存储;

select hex(name),hex(gbk),hex(utf8),hex(latin_utf8) from test;
+----------------------------------+----------+--------------+-----------------+
| hex(name)                        | hex(gbk) | hex(utf8)    | hex(latin_utf8) |
+----------------------------------+----------+--------------+-----------------+
| 6C697564656875610000000000000000   | C8D5B1BE | E697A5E69CAC  | 6466                    |
| E4B8ADE59BBD00000000000000000000 | C8D5B1BE | E697A5E69CAC  | E4B8ADE59BBD    |
| E4B8ADE59BBD00000000000000000000 | D6D0B9FA | E4B8ADE59BBD | E4B8ADE59BBD    |
+----------------------------------+----------+--------------+-----------------+

2.针对声明支持两种或更多字符集的情况,测试:

a)如果声明支持存储字符集转换,在支持的范围内测试存储字符集转换;

set names latin1;
show variables like 'character_set%';
+--------------------------+---------+
| Variable_name                 | Value   |
+--------------------------+---------+
| character_set_client          | latin1   |
| character_set_connection | latin1   |
| character_set_database    | utf8      |
| character_set_filesystem   | binary  |
| character_set_results        | latin1   |
| character_set_server         | utf8mb4 |
| character_set_system        | utf8     |
+--------------------------+---------+
select * from test;
+----+------------------+------+------+------------+
| id    | name                 | gbk    | utf8  | latin_utf8   |
+----+------------------+------+------+------------+
|  1    | liudehua            | ??       | ??     | df              |
|  5    | 中国                   | ??       | ??     | 中国           |
|  6    | 中国                   | ??       | ??     | 中国           |
+----+------------------+------+------+------------+

b)如果声明支持连接字符集和存储字符集不一致,测试连接字符集与存储字符集不相同时,数据增、删、改、查操作是否合理处理,连接字符集与存储字符集都支持的汉字在增、删、改、查时是否正确转换;

MySQL [test]> set session character_set_connection=latin1;
​
MySQL [test]> select * From test;
+----+------------------+--------+--------+---------------+
| id | name             | gbk    | utf8   | latin_utf8    |
+----+------------------+--------+--------+---------------+
|  1 | liudehua         | 日本   | 日本   | df            |
|  5 | 中国                | ??      | 日本   | 中国        |
|  6 | 中国                | 中国   | 中国   | 中国        |
+----+------------------+--------+--------+---------------+
​
update test set gbk='美国' WHERE id=6;
​
MySQL [test]> select * from test;
+----+------------------+--------+--------+---------------+
| id | name             | gbk    | utf8   | latin_utf8    |
+----+------------------+--------+--------+---------------+
|  1 | liudehua         | 日本   | 日本   | df               |
|  5 | 中国                | ??      | 日本   | 中国        |
|  6 | 中国                | ??      | 中国   | 中国        |
+----+------------------+--------+--------+---------------+

3.如果声明支持二进制字符串,测试插入和查询出的二进制字符串的二进制数值是否完全一致。

insert into test (name,gbk,utf8,latin_utf8) values (UNHEX('4D7953514C'),'中国','中国',_latin1'中国');
select * from test;
​
+----+------------------+--------+--------+---------------+
| id | name             | gbk    | utf8   | latin_utf8    |
+----+------------------+--------+--------+---------------+
|  1 | liudehua         | 日本   | 日本   | df            |
|  5 | 中国             | ??     | 日本   | 中国        |
|  6 | 中国             | ??     | 中国   | 中国        |
|  7 | MySQL            | 中国   | 中国   | 中国        |
+----+------------------+--------+--------+---------------+
 select hex(name) from test where id = 7;
+----------------------------------+
| hex(name)                        |
+----------------------------------+
| 4D7953514C0000000000000000000000 |
+----------------------------------+

【云贝学院】云贝学院腾讯云TDSQL TCP认证课程已上线,学院有不定期公开课 需要的同学可以加老师微信:19941464235

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 云贝餐饮连锁V2独立版V2-2-2前端是一款基于云贝餐饮连锁系统V2的升级版本前端软件。它是云贝餐饮连锁系统的其中一部分,专门用于店铺的前台操作和管理。 V2-2-2前端在功能上进行了多项改进和优化。首先,它提供了更加直观和友好的用户界面,使用户能够更快地上手操作,提高出品效率。其次,V2-2-2前端增加了新的功能模块,例如桌位管理、订单管理、菜品管理等,使得店铺经营者能够更加方便地管理店铺运营,提高工作效率。此外,V2-2-2前端还支持移动设备的适配,店铺经营者可以随时随地对店铺进行管理,方便灵活。 除了以上功能改进,V2-2-2前端还进行了性能优化,提高了系统的稳定性和响应速度。它采用了先进的技术架构,能够快速处理大量数据,并保证系统的高可靠性。 总而言之,云贝餐饮连锁V2独立版V2-2-2前端是一款功能强大、操作简便、稳定可靠的前台管理软件,为店铺经营者提供了更好的店铺管理体验,帮助他们提高工作效率,顺利运营餐饮连锁店铺。 ### 回答2: 云贝餐饮连锁v2独立版v2-2-2前端是一种用于云贝餐饮连锁店的独立版系统的前端界面。该系统是基于最新技术开发的,旨在提供更好的用户体验和操作便利性。 该前端系统具有一系列功能和特点。首先,它提供了一个直观易用的用户界面,使店员和顾客能够快速上手。用户可以通过界面轻松浏览各种菜单和商品信息,并能方便地进行订购和点餐操作。系统还支持分餐点管理,使连锁店的各个分店能够更好地协同工作。 其次,该前端系统具有灵活的自定义功能。店家可以根据自己的需求,自定义菜单、优惠活动、店面布局等等,使系统更好地适应不同店铺的特点和运营需求。同时,系统还提供了丰富的数据报表功能,方便店家对业务数据进行分析和统计,从而做出更准确的经营决策。 另外,该前端系统还支持线上线下数据同步。店家可以通过该系统实现线上订单与实际库存的实时同步,确保库存信息的准确性。顾客也可以使用系统进行线上支付,实现线上线下一体化的购物体验。 最后,该前端系统具有良好的稳定性和安全性。系统采用了先进的技术架构和严格的安全控制措施,确保数据的安全性和稳定性,防止信息泄露和系统故障。 总而言之,云贝餐饮连锁v2独立版v2-2-2前端是一款功能强大、易于使用、稳定安全的系统,旨在提供更好的点餐和管理体验,帮助餐饮连锁店提升效率,提供优质服务。 ### 回答3: 云贝餐饮连锁v2独立版v2-2-2前端是一款餐饮连锁管理系统的前端界面更新版本。 这个版本的云贝餐饮连锁系统前端经过了一系列的改进和优化。首先,界面设计更加简洁美观,用户体验更加友好。通过优化页面布局、颜色搭配和字体选择等方面,使得操作界面更清晰明了,用户在使用过程中更容易理解和掌握各项功能。 其次,v2-2-2版本的前端增加了一些新的功能和特性。例如,引入了实时数据更新和动态图表展示功能,可以随时随地查看最新的经营数据和趋势分析。同时,还加入了多语言支持功能,可以根据用户的需求切换不同的语言界面,提升了国际化的应用能力。 此外,该版本的前端还对系统的性能进行了优化。通过对代码的精简和调优,提高了系统的响应速度和稳定性,降低了卡顿和崩溃的概率,提升了用户的使用体验。 最后,值得一提的是,云贝餐饮连锁v2独立版v2-2-2前端还支持多平台的适配,可以在不同的终端设备上运行,包括电脑、平板和手机等。这大大增加了使用的便捷性和灵活性,让用户能够方便地随时管理餐饮连锁业务。 总而言之,云贝餐饮连锁v2独立版v2-2-2前端通过界面改进、新功能增加、性能优化和多平台适配等方面的改动,为餐饮连锁管理系统提供了更好的使用体验和更为丰富的功能,有助于提高运营效率和用户满意度。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值