MySQL编码设置方法

一、设置创建数据库时数据库所使用的编码方式
CREATE {DATABASE|SHECMA} [IF NOT EXISTS] db_name
[DEFAULT] CHARACTER SET [=] charset_name

这里写图片描述

我们默认[ ]里面的内容是可选的,也就是说可写可不写的。还可以选择编码方式,如
[DEFAULT] CHARACTER SET [=] charset_name

这里写图片描述

经过这样的设置之后呢,我们数据库中所使用的编码就是gb2312了,当然你也可以设置其他的编码方式,主要更改charset_name就好了。

二、MySQL服务器能够支持多种字符集
可以使用SHOW CHARACTER SET语句列出可用的字符集:

这里写图片描述
……
ps:关于字符集和校对的知识可以参考官方的参考手册

三、查看和修改MySql数据库、表、表中字段的编码方式
MySQL中,数据库的编码问题比较重要,这里主要讲解了修改数据库编码方式、修改表的编码方式和修改表中某一字段的编码方式,有需要的小伙伴可以参考一下。

1、查看当前数据库的编码和修改数据库编码。
在进行修改数据库编码方式之前,我们可以进行查看数据库编码方式操作。
首先,需要先切换到某一个具体的数据库下(USE db_name),然后再使用Sql语句:
SHOW VARIABLES LIKE ‘ CHARACTER_SET_DATABASE‘;

这里写图片描述

根据显示我们知道abc数据库的编码方式是utf8。
接下来就是修改编码方式了,可以修改数据库编码方式、修改表的编码方式、修改表中字段的编码方式(这…有点凌乱,呵呵呵,上截图)
先说说修改数据库编码方式:
ALTER {DATABASE|SHECMA} [db_name] [DEFAULT] CHARACTER SET [=] charset_name

这里写图片描述

可以看到现在数据库abc中的编码方式就由utf8变为了gb2312啦。

2、查看表的编码和修改表的编码
先看看数据库abc中有哪些表,使用Sql语句;
SHOW TABLES:

这里写图片描述

恩,里面有一个mytable表,创建一个数据库之后,数据库里面默认情况下是空空如也,一张表都没有的,那为什么出现表了呢,哈哈,我这是事先创建好的一张表。
然后修改表的编码方式,先查看一下表的编码方式:
介绍两种方式:
方式1:
USE db_name;
SHOW CREATE TABLE table_name;

这里写图片描述

方式2:
USE db_name;
status;

这里写图片描述

数据库abc的表mytable的编码方式是utf8,现在我们修改编码方式:
ALTER TABLE mytable CHARACTER SET gb2312;

这里写图片描述

3、修改表中字段的编码方式:

这里写图片描述

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
7.1 什么是数据仓库        数据仓库是基于特定的数据结构(以及有关应用程序)所构建的数据的中央存储库,以便为分析和报表提供 一致的数据源。面向整个组织创建的企业数据仓库(Enterprise Data Warehouse,EDW)用于对整个组织的信息 进行分析。大多数情况下,超大型组织中会有多个企业级数据仓库,每个都拥有组织中某个很大组成部分的数 据,如某个区域,或者很大的功能域。批处理数据集成方案通常用于将数据置入或者移出数据仓库。数据仓库架 构的设计要达到以下目的:为整个组织的分析提供一致可

PhpStorm管理数据库 - 2016-04-29 17:04:52

打开PhpStorm,点击View -- Tool Windows -- Database 点击绿色的“+”,选择Data Source -- MySQL 填写数据名库,用户名,密码,没有驱动文件的话会提示下载驱动文件,下载不成功就再点一次 驱动下载安装完后点击Test Connection,测试连接 出现Connection successful证明连接成功 点击Apply会提示设置密码,输入再次密码就行,OK 这时就可以在PhpStorm里管理你的数据库了
我2014年在医院his项目,给门诊医生站创建用户,遇到一奇怪问题,赋予该用户dba角色,然后没有dba权限,后来发现在该用户下dba不是default role 很奇怪! 后来有一个小师弟也遇到这个问题,现在把当时的文档发表给大伙共享 数据库版本 SQL select * from v$version; BANNER -------------------------------------------------------------------------------- Oracle Databa

EDB数据库创建流程指南 - 2016-04-29 14:04:39

1.1 使用工具创建edb数据库 1.1.1 打开Postgres Enterprise Manager工具,连接到EDB server 1.1.2 打开连接 1.1.3 新建登陆用户 1.1.4 建新数据库rico,如果需要新建表空间,请参本文1.3小节,建好后在Definition选项卡中选择新建好的表空间(在下面二张图中Tablespace中选择建好的表空间) 1.1.5 打开rico数据库,建新schema 1.1.6 schema rico建好后 1.1.7 用navicat premium登陆
   在innodb存储引擎中,有一个叫doublewrite技术模块,是可选的。它 通过参数InnoDB_doublewrite的值来控制,如果为0表示不启用,可以通过show status like  "%InnoDB_dblwr%"来查看 ,doublewrite技术带给innodb存储引擎的是数据页的可靠性,下面对doublewrite技术进行解析,让大家充分理解 doublewrite是如何做到保障数据页的可靠性。 一、doublewrite应用场景:     我们知道,innodb的数据页一般
今天 qq 上一好友发过来一个 sql 让我帮他看看,说这个 sql 加上一个条件查询时间在 3 ~ 4 秒左右,而不加上这个条件则非常快,正好这段时间也在学习优化,就看看问题所在。 sql 语句大致如下: SQL SELECT a.mc_id  AS company_id,         a.mc_name   AS company_name,         b.area_name AS district_name,         c.code_name AS operating_quality,

数据库中的锁 - 2016-04-28 22:04:17

1  前言 数据库 大并发操作要考虑死锁和锁的性能问题。看到网上大多语焉不详(尤其更新锁),所以这里做个简明解释,为下面描述方便,这里用T1代表一个数据库执行请求,T2代表另一个请求,也可以理解为T1为一个线程,T2 为另一个线程。T3,T4以此类推。下面以SQL Server(2005)为例。 2  锁的种类 共享锁(Shared lock)。 例1:----------------------------------------T1: select * from table (请想象它需要执行1个小时
    目前计划对跨平台的数据库环境进行迁移,一来降低运维成本,二来更加可控。其实对于很多机器来说,如果机器跑了很多年,一直没有重启过,那么时间长了,一个直观的感受就是稳定,这也是小机口碑远远好于PC的一个重要原因吧,但是如果机器有一天出了问题,那么可能就会让大家坐立不安。其实这也能够折射出很多的运维管理的一些误区,很多问题没有发生,不代表不会发生,这个时候墨菲定律就是大家公认的运维法则了。而且小机虽好,但是超过了服役期,那么就有可能是定时炸弹,毕竟服役时间远远大于预期,于情于理都能说得通了。     当然
什么是触发器? 触发器是在对表进行插入、更新或删除操作时自动执行的存储过程 触发器通常用于强制业务规则 触发器是一种高级约束,可以定义比用CHECK 约束更为复杂的约束 :可执行复杂的SQL语句(if/while/case)、可引用其它表中的列 触发器定义在特定的表上,与表相关。  自动触发执行  不能直接调用  是一个事务(可回滚) 使用触发器的好处 触发器可通过数据库中的相关表实现级联更改,不过,通过级联引用完整性约束可以更有效地执行这些更改。 触发器可以强制比用 CHECK 约束定义的约束更为复杂的
         最近项目上出现了一个无法理解的BUG,用户默认每天享有一定次数的权限,使用完毕则无法享用,第二天才能再继续。本质就是redis缓存过期嘛,让它凌晨12点失效就好了。          但是问题发生了,它就是没失效...深究其原因,竟是由于零界点没处理好的锅,服务器时间与request时间是有些许时间差的,key的expire到了一定数量处理也是需要时间哒,就这俩主因。加个存在判断,失效给他提前个10秒留个准备就好了~         所以吸取教训,好好了解一下这个失效机理,同时也提醒各位