파이썬 2.6에서 SQL 서버 2008에서 필드를 가져오고 싶습니다. 여기freetds와 함께 pymssql을 사용할 때 UnicodeDecodeError
[ARGSERVER03]
host = 192.168.1.3
port = 1433
tds version = 7.0
코드입니다 : 여기 내 FreeTDS를의 .conf 파일입니다
conn = pymssql.connect(host='192.168.1.3', user='****', password='****', database='TrafficMonitor', as_dict=True, charset='UTF-8')
i = 0
cur.execute('SELECT * FROM dbo.tblTrafficCounterData')
while i < 10:
car = cur.fetchone_asdict()
if car is None:
break
c = car['Class']
print c
i = i + 1
그러나 제공합니다
UnicodeDecodeError: 'utf8' codec can't decode byte 0xd3 in position 0: invalid continuation byte
유니 코드 필드는 페르시아어이다. 추적은 다시 라인을위한 car = cur.fetchone_asdict()
[편집]
내가 SQL 서버 관리 스튜디오에서 데이터베이스 속성에서 데이터베이스 데이터 정렬을 검사하고 그것이 :
Arabic_CI_AS
그러나 나는 것을 사용하는 경우 문자 세트에 다음과 같이 표시됩니다.
LookupError: unknown encoding: Arabic_CI_AS
:
올바른 인코딩을 발견하는 데 도움이 될 몇 가지
HTTP ://stackoverflow.com/questions/9090915/how-to-read-large-file-with-unicode-in-python-3 –