在实际生产和使用SQL Server中,常常会用到中文的情况。但是,有时候会出现中文乱码的情况,本文提供中文乱码的两种常见原因和解决思路。
安装设置问题
安装SQL Server实例时,系统默认选择的是排序规则是拉丁文的排序规则,极容易造成使用过程中出现乱码。
解决方案就是在安装实例时不使用默认值、选择Chinese_PRC_CS_AI_WS。
业务连接问题
在 一些客户业务使用SQL Server中,连接设置的字符集也会影响到中文显示问题。以Python为例,SQL Server中涉及到中文的缺省字符集是CP936,因此需要将charset设置为CP936,从而解决中文乱码问题。
import pymssql
conn = pymssql.connect(server="xxx",user="xxx",password="xxx",database="xxx",charset='cp936')