在服务端用show variables like 'ch%';查看服务端字符集,
在客户端执行set names utf8;(以utf8为例)就可以了
一、pl/sql developer 中文字段显示乱码
原因:因为数据库的编号格式和pl /sql developer的编码格式不统一造成的。
二、查看和修改oracle数据库字符集:
select userenv('language') from dual;
查询结果:
SIMPLIFIED CHINESE_CHINAAL32UTF8
--修改oracle数据库字符集:(在SQL Plus中)
sql> conn / as sysdba;
sql> shutdown immediate;
database closed
database dismounted
oracle instance shut down
sql> startup mount;
oracle instance started
total system global area 135337420 bytes
fixed size 452044 bytes
variable size 109051904 bytes
database buffers 25165824 bytes
redo buffers 667648 bytes
database mounted
sql> alter system enable restricted session;
system altered
sql> alter system set job_queue_processes=0;
可能需要修改数据库的配置
一般情况下我们在设计数据库的时候都会事先确定好要用的字符集,但当我们要使用以前的数据的时候,可能会遇到字符集不同的问题,字符集的修改不能通过alert database charest set 来直接修改,这样只是影响以后的数据,对已有的数据没有用,那怎么办那
我们模拟讲latin1字符集的数据库修改成GBK的字符集,
1,导出表结构:
mysqldump -uroot -p --default -character-set = gbk -d databasename>createtabsql
-default-character-set=gbk 表示设置上面字符集连接 -d表示只导出表结构
2,手工修改createtabsql中表结构定义中的字符集为新的字符集。
3,确保记录不在更新,导出所有记录
mysqldump -uroot -p --quick --no-create-info --extended-insert --default-chareacter-set=latina
databasename>datesql
--quick 该选项用于转存储大的表,--extended-insert 可以使转存文件更小,重载的时候加快速度,
--no-create-info不写重新创建每个转存储表的create table 语句,--default-character-set=latin1按照原有的字符集导出所有数据,这样导出的文件中,所有的中文都是可见的,保证不会出项乱码,
4,打开datasql 将set names lation1修改为set names gbk;
5,使用新的字符集创建数据库,
create database databasename default charset gbk;
6,创建表,执行createtabsql
mysql -uroot -p databasename < createtabsql
7,导入数据,执行datasql,
mysql -uroot -p databasename < datasql
参考上面的方法试验下!~
你找到MySql的服务器安装路径,默认是C:\Program
Files\MySQL\MySQL
Server
50,找到myini这个配置文件,然后把default-character-set的值改成utf8,有两个地方如果还不行,看下乱码的那个列的编码格式,把字符集改成utf8,把整理改成utf8_general_ci
Word 文档是许多电脑用户写作时使用的文件格式,当您辛辛苦苦写完一篇Word文档后,发现它因损坏而无法打开时,一定非常着急。其实,您不必心焦,因为我们还是有一些方法可以修复损坏文档,恢复受损文档中的文字。下面是具体的步骤。
1 采用专用修复功能
①在“文件”菜单上,单击“打开”。
②在“查找范围”列表中,单击包含要打开的文件的驱动器、文件夹或Internet 位置。
③在文件夹列表中,定位并打开包含文件的文件夹。
④选择要恢复的文件。
⑤单击“打开”按钮旁边的箭头,然后单击“打开并修复”(如图)。
“打开并修复”是Word 2002/2003 才具有的功能,如果该方法仍不能打开受损文档,或者您使用的是Word 97/2000,可以试试以下方法。
2 提取文字法
①在“工具”菜单上,单击“选项”“常规”选项卡。
②确认选中“打开时确认转换”复选框,然后单击“确定”。
③单击常用工具栏上的“打开”按钮。
④在“文件类型”框中,单击“从任意文件中恢复文本”。
⑤像通常一样打开文档。
在使用上述方法打开受损Word 文档后,如果文档内容显示混乱,请继续以下工作。
3 转换文档格式
将Word文档转换为另一种格式,然后再将其转换回Word 文档格式。这是最简单和最彻底的文档恢复方法,请始终先尝试这种方法。
①在Word 中打开损坏的文档。
②在“文件”菜单上,单击“另存为”。
③在“保存类型”列表中,单击“RTF 格式(rtf)”,然后单击“保存”。
请参考
字符集不一致
select from V$NLS_PARAMETERS
客户端注册表中的nls_lang 应该是SIMPLIFIED CHINESE_CHINAZHS16GBK
把客户端的NLS_LANG参数改为AMERICAN_AMERICAUTF8
再试试
1用phpmyadmin创建数据库和数据表
创建数据库的时候,请将“整理”设置为:“utf8_general_ci”
或执行语句:
复制代码
代码如下:CREATE
DATABASE
`dbname`
DEFAULT
CHARACTER
SET
utf8
COLLATE
utf8_general_ci;
创建数据表的时候:如果是该字段是存放中文的话,则需要将“整理”设置为:“utf8_general_ci”,
如果该字段是存放英文或数字的话,默认就可以了。
相应的SQL语句,例如:
CREATE
TABLE
`test`
(
`id`
INT
NOT
NULL
,
`name`
VARCHAR(
10
)
CHARACTER
SET
utf8
COLLATE
utf8_general_ci
NOT
NULL
,
PRIMARY
KEY
(
`id`
)
)
ENGINE
=
MYISAM
;
2用PHP读写数据库
在连接数据库之后:
复制代码
代码如下:$connection
=
mysql_connect($host_name,
$host_user,
$host_pass);
加入两行:
mysql_query("set
character
set
'utf8'");//读库
mysql_query("set
names
'utf8'");//写库
就可以正常的读写MYSQL数据库了。
用的appserv-win32-2510做的环境,装这个包的时候用默认的utf8编码。
在写数据库连接文件时,写成:
$conn
=
mysql_connect("$host","$user","$password");
mysql_query("SET
NAMES
'UTF8'");
mysql_select_db("$database",$conn);
然后在做页面时,注意这句:
复制代码
代码如下:<meta
>
以上就是关于mySql连接数据库出现乱码,如何解决啊全部的内容,包括:mySql连接数据库出现乱码,如何解决啊、oracle数据库乱码怎么解决、PHP中MYSQL数据库乱码问题,跪求解决方案等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)