发一篇MySQL字符集:如何才干包管不产生乱码
根据Evans的调查报告,“MySQL的使用在未来将继续呈成长趋势。”数据库中关于字符集的品种有良多,对编程有影响的次要是客户端字符集和数据库字符集(另有一个服务器字符集,不晓得干甚么用的)。数据库中经常使用的操纵就是保留数据和读取数据,在这过程当中,乱稳定码和数据库字符集貌似没有甚么干系。我们只需包管写进时选择的字符集和读取时选择的字符集分歧,即只需包管两次操纵的客户端字符集分歧便可。
客户端字符集的设置,根据客户端分歧办法分歧:
1.利用把持台毗连,在my.ini文件中的client项内里设置;
2.利用ems毗连,优先利用ems毗连设置的字符集,默许利用my.ini文件中的设置;
3.jdbc毗连,在毗连串中指定:
jdbc:MySQL://192.168.3.99:3306/test?useUnicode=true&;characterEncoding=gbk
在写进时Mysq会将客户端指定的字符集转换成数据库字符集存进数据文件,读取时又将数据库字符集转换成客户端指定的字符集展现给客户端,把客户端字符集和数据库字符设置分歧,不言而喻的优点是免失落转换的功能消耗;别的,假如思索到今后数据库的迁徙,将数据库字符集设置为年夜多半数据库都撑持的字符会议免却很年夜贫苦。
几个字符集相干的命令:
1.检察MySQL数据库服务器字符集,数据库字符集和客户端字符集
showvariableslike%char%;
character_set_client,客户端字符集
character_set_database,数据库字符集
character_set_server,服务器字符集
2.检察MySQL数据表(table)的字符集
showtablestatusfromtablenamelike%countries%;
3.检察MySQL数据列(column)的字符集。
showfullcolumnsfromtablename;
4.检察以后安装的MySQL所撑持的字符集。
showcharset;
RDBMS并非没有局限性。它们难以扩展,需要大量的资源来配置和维护,比如时间、硬件和人力。同样,它们往往遵循峰值性能模型,这就要求系统按照峰值容量来配置可用性,而不考虑典型的数据使用情况。 然后最好有实践机会,能够把实践到的和实践结合起来,其实理论思考是个非常困扰和痛苦的事情 sqlserver的痛苦之处在于有用文档的匮乏,很多只是表明的东西 发几份SQL课件,以飨阅者 原来公司用过MYSQL自己也只是建个表写个SQL 如果是将来做数据库的开发设计,就应该详细学习T-SQL的各种细节,包括T-SQL的程序设计、存储过程、触发器以及具体使用某个开发语言来访问数据库。 两个月啃那本sqlserver2005技术内部-存储引擎,花了几个月啃四本书 可以动态传入参数,省却了动态SQL的拼写。 你可以简单地认为适合的就是好,不适合就是不好。
页:
[1]