mysql创建数据库字符集(mysql用sql语句创建表和数据库怎么设置字符编码’)
本文目录
- mysql用sql语句创建表和数据库怎么设置字符编码’
- 如何设置Mysql数据库默认的字符集编码为GBK
- mysql建表的时候设置表里面的字段的字符集是utf-8要怎么设置默认建好后我去mysql里看字符集都是gbk
- php创建mysql数据库时候如何设置字符集
- mysql用命令创建数据库怎么设置默认字符集
- 创建mysql数据库时一般字符集设定为什么
- php创建mysql数据表,怎么选择UTF8字符集
- mysql在创建数据时 是不是必须需要输入字符集
mysql用sql语句创建表和数据库怎么设置字符编码’
方法如下:
我们先建一个DEMO表,来做我们今天的实现,建表语句如下:
CREATE TABLE
DEMO
(
NAME VARCHAR(50) COMMENT ’姓名’,
SEX CHAR(1) COMMENT ’性别’,
PRIMARY KEY (NAME)
)
ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=’例子表’;
并且select查询一下,如下图
增加一个AGE字段,
ALTER TABLE DEMO ADD AGE CHAR(3);
select查询一下,如下图
请对比上下图,可以发现 多出了一个AGE字段,此处是CHAR类型的。
那么如何删除我们刚加的字段呢,
ALTER TABLE DEMODROP COLUMN AGE;
select查询一下,如下图
请对比上下图,可以发现 AGE字段被删除掉了
我们在把这个字段加回来
ALTER TABLE DEMO ADD AGE CHAR(3);,
我们用视图工具DBVISUAL看下表机构,这时AGE字段是CHAR类型的
我们如果需要把这个字段修改为VARCHAR类型的怎么办呢,
ALTER TABLE DEMO MODIFY AGE VARCHAR(20),
然后我们在用视图工具DBVISUAL看下表机构,这时AGE字段是VARCHAR类型的
如何设置Mysql数据库默认的字符集编码为GBK
1、更改服务器的编码方式,在终端输入以下命令:mysqld--character-set-server=gbk--collation-server=gbk_chinese_ci;2、更改某个数据库的编码方式mysql-uroot-palterdatabasecharactersetgbkcollategbk_chinese_ci;3、在创建数据库时指定编码:mysql-uroot-pcreatedatabasedb_namecharactersetgbkcollategbk_chinese_ci;4、更改某个表的编码方式mysql-uroot-pdb_namealtertabletable_nameconverttocharachtersetgbkcollategbk_chinese_ci;5、在创建表时指定编码方式mysql-uroot-pdb_namecreatetabletable_name(....)charactersetgbkcollategbk_chinese_ci;6、更改某行的编码方式mysql-uroot-pdb_namealtertabletable_namemodifycolumn_namevarchar(20)charactersetgbkcollategbk_chinese_ci;7、在创建列时指定编码方式:《/pre》《prename="code"class="sql"》mysql-uroot-pdb_namecreatetabletable_name(...,col1varchar(20)charactersetgbkcollategbk_chinese_ci,...)charactersetutf8collateutf8_general_ci;
mysql建表的时候设置表里面的字段的字符集是utf-8要怎么设置默认建好后我去mysql里看字符集都是gbk
1、建表时指定字符集utf-8:
CREATETABLE 表名
( `id`TINYINT(255)UNSIGNEDNOTNULLAUTO_INCREMENTPRIMARYKEY,`content`VARCHAR(255)NOTNULL)
DEFAULTCHARACTERSET=utf8;
2、修改表的字符集为utf-8:
altertable表名converttocharactersetutf8;
***隐藏网址***
扩展资料:
1、创建数据库时设置字符集:
CREATEDATABASE 数据库名CHARACTERSETutf8COLLATEutf8_general_ci;
注意后面三个单词之间是有下划线的对于每个选项所给定的值,前面没有等号;在第一个选项和第二个选项之间也没有逗号。
2、修改数据库的字符集:
alterdatabase 数据库名charactersetutf8;
3、显示某数据库字符集设置:
showcreatedatabase数据库名;
4、显示某数据表字符集设置:
showcreatetable表名;
5、修改字段:
altertable表名modifycolumn’字段名’varchar(30)charactersetutf8notnull;
6、添加表字段:
altertable表名addcolumn’字段名’varchar(20)charactersetutf8;
php创建mysql数据库时候如何设置字符集
我来给你做一个综合解释吧。在正常情况下。PHP脚本 HTML 已经浏览器 然后就是数据库。都有自己的字符集。何谓字符集。我想你如果是一个真正想热衷于学PHP那么你应该花一定的时间去了解一下字符集的问题。就好比我做第一个项目。因为字符集搞的死去活来。1.PHP的字符集。一般PHP网页的是嵌套在html页面以内。那么如果在没有冲突的情况下可以使用header方面设置。比如《?php header ... ?》3.数据库的问题。mysql_query("set names gbk"); 这句话意思就是说,在操作数据库的时候已这个字符集去读写。当然这个字符集要对应你的页面的字符集哦。4.浏览器。浏览器的问题是最万恶的,因为每个浏览器默认的是gb2312.当然不同的浏览器是不同的。所以要想成为一名优秀的程序员,写出优质的代码。你还得去了解每个浏览器的差别。当然目前是不需要的,当然这个问题你慢慢学习。写代码的过程中会慢慢了解到的。你要做的就是将所有使用字符集确保一致性
mysql用命令创建数据库怎么设置默认字符集
创建数据库的时候,直接指定数据库的字符集,之后再该数据库中创建表的时候就不用再指定了,所有创建的表都是跟数据库字符集一样的。列如:create database \\’dbname\\’ default character set utf8;
创建mysql数据库时一般字符集设定为什么
创建数据库的时候,直接指定数据库的字符集,之后再该数据库中创建表的时候就不用再指定了,所有创建的表都是跟数据库字符集一样的。列如:create database \\’dbname\\’ default character set utf8;
php创建mysql数据表,怎么选择UTF8字符集
一、转码失败在数据写入到表的过程中转码失败,数据库端也没有进行恰当的处理,导致存放在表里的数据乱码。针对这种情况,前几篇文章介绍过客户端发送请求到服务端。其中任意一个编码不一致,都会导致表里的数据存入不正确的编码而产生乱码。比如下面简单一条语句:set @a = "文本字符串";insert into t1 values(@a);
变量 @a 的字符编码是由参数 CHARACTER_SET_CLIENT 决定的,假设此时编码为 A,也就是变量 @a 的编码。
2. 写入语句在发送到 MySQL 服务端之前的编码由 CHARACTER_SET_CONNECTION 决定,假设此时编码为 B。
3. 经过 MySQL 一系列词法,语法解析等处理后,写入到表 t1,表 t1 的编码为 C。那这里编码 A、编码 B、编码 C 如果不兼容,写入的数据就直接乱码。
二、客户端乱码表数据正常,但是客户端展示后出现乱码。这一类场景,指的是从 MySQL 表里拿数据出来返回到客户端,MySQL 里的数据本身没有问题。客户端发送请求到 MySQL,表的编码为 D,从 MySQL 拿到记录结果传输到客户端,此时记录编码为 E(CHARACTER_SET_RESULTS)。那以上编码 E 和 D 如果不兼容,检索出来的数据就看起来乱码了。但是由于数据本身没有被破坏,所以换个兼容的编码就可以获取正确的结果。这一类又分为以下三个不同的小类:
1)字段编码和表一致,客户端是不同的编码比如下面例子, 表数据的编码是 utf8mb4,而 SESSION 1 发起的连接编码为 gbk。那由于编码不兼容,检索出来的数据肯定为乱码。
2)表编码和客户端的编码一致,但是记录之间编码存在不一致的情形比如表编码是 utf8mb4,应用端编码也是 utf8mb4,但是表里的数据可能一半编码是 utf8mb4,另外一半是 gbk。那么此时表的数据也是正常的,不过此时采用哪种编码都读不到所有完整的数据。这样数据产生的原因很多,比如其中一种可能性就是表编码多次变更而且每次变更不彻底导致(变更不彻底,我之前的篇章里有介绍)。举个例子,表 t3 的编码之前是 utf8mb4,现在是 gbk,而且两次编码期间都被写入了正常的数据。
3)每个字段的编码不一致,导致乱码和第二点一样的场景。不同的是:非记录间的编码不统一,而是每个字段编码不统一。举个例子,表 c1 字段 a1,a2。a1 编码 gbk,a2 编码是 utf8mb4。那每个字段单独读出来数据是完整的,但是所有字段一起读出来,数据总会有一部分乱码。
三、LATIN1还有一种情形就是以 LATIN1 的编码存储数据估计大家都知道字符集 LATIN1,LATIN1 对所有字符都是单字节流处理,遇到不能处理的字节流,保持原样,那么在以上两种存入和检索的过程中都能保证数据一致,所以 MySQL 长期以来默认的编码都是 LATIN1。这种情形,看起来也没啥不对的点,数据也没乱码,那为什么还有选用其他的编码呢?原因就是对字符存储的字节数不一样,比如 emoji 字符 "❤",如果用 utf8mb4 存储,占用 3 个字节,那 varchar(12) 就能存放 12 个字符,但是换成 LATIN1,只能存 4 个字符。
mysql在创建数据时 是不是必须需要输入字符集
这个是必须的,你在创建数据库之前就应该想好用什么字符集,现在最好的就是utf8嘛,国际标准的。如果你前面就不确定字符集,后面就涉及到转换字符的问题,比较麻烦的。
本文相关文章:
getparameter中文乱码(java 接收get请求带中文乱码,已经更改字符编码 可是不生效)
2024年7月24日 05:50
ascii编码中(在ASCII码字符编码中,什么字符无法显示或打印出来)
2024年6月5日 06:53
更多文章:
如何评价郭敬明在《演员请就位》中的表现?《巅峰对决》撞衫《演员请就位》,表演类综艺急着成“宇宙”吗
2023年9月25日 14:20
超级兔子人联机版(超级兔子人手机版怎么联机 教你如何正确操作)
2024年5月23日 05:59
office 2007下载(官方正版原版 office 2007 下载地址 及密钥)
2024年6月8日 11:55
生僻却美到爆的单字(生僻却美到爆的单字 生僻却美到爆的单字有哪些)
2024年7月21日 22:26
U大师和U盘启动大师是一个软件吗?大白菜、老毛桃、u 大师、U启动等等,一键制作U盘启动盘哪家强,有没有大神推荐一下
2024年6月25日 13:11
320k音乐下载(H.O.T 的320k音乐哪里有下载要全的,不是一张专辑)
2024年6月16日 02:26
qq空间网页版电脑登录界面(qq空间网页版怎么登录 一起来看看)
2024年6月29日 15:29
手机酷我音乐盒官方免费下载(请问如何在手机上安装酷我音乐盒)
2024年6月29日 05:16