SQL中文字符乱码问题

我在mysqlyog中创建了一个数据库mybase,中有一个表,记录的是电子产品的价格,但是在显示的时候


调用语句show columns from product;

select pname from produc;

显示的是问号,也就是说在显示中文的时候出现了乱码。

尝试使用命令查看编码格式,show create database mybase;



SQL中文字符乱码问题_第1张图片

latin1

这是什么鬼?

查询了一下,显示

Latin1是ISO-8859-1的别名,有些环境下写作Latin-1。ISO-8859-1编码是单字节编码,向下兼容ASCII,其编码范围是0x00-0xFF,0x00-0x7F之间完全和ASCII一致,0x80-0x9F之间是控制字符,0xA0-0xFF之间是文字符号。

现在的问题就是怎样解决编码问题?


查看本地服务器状况


SQL中文字符乱码问题_第2张图片

网上的方法一个是在创建数据库和创建表的时候就指定编码格式

一劳永逸的方法就是  在my.ini文件中添加几行代码就行   相关代码暂时不加 因为我的MySQL中找不见、my.ini但是有个my.ini.txt文件  打开之后也不是网上说的那种合适  所以

执行命令delete 数据库,然后重新创建一个数据库,在创建的时候指定编码格式

1)CREATE  DATABASE  mydbname  CHARACTER SET  utf8  COLLATE utf8_general_ci;

2)CREATE  DATABASE  IF NOT  EXISTS  mydbname  DEFAULT CHARACTER SET utf8;

这样就是设置好了我们数据库的编码格式

当然,表的编码格式也要设置一下:

CREATETABLEIF NOTEXISTS test (

 namevarchar(64)NOTNULL

 ) ENGINE=InnoDBDEFAULTCHARSET=utf8;

2.删除mysql,重新下载一个版本,然后在my.ini中做出相应的修改。

你可能感兴趣的:(SQL中文字符乱码问题)