python到mssql编码的问题 [英] python to mssql encoding problem

查看:248
本文介绍了python到mssql编码的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问候

通过使用 pymssql 库,我想将数据写入MSSQL数据库,但我遇到编码问题。这是我写入数据库的示例代码:

By using pymssql library, I want to write data to a MSSQL database however I encounter encoding issues. Here is my sample code to write to the DB:

# -*- coding: utf-8 -*-
import _mssql

....
Connection info data here
....


def mssql_connect():
    return _mssql.connect(server=HOST, user=USERNAME, password=PASS, database=DB, charset="utf-8")

con = mssql_connect()
INSERT_EX_SQL = "INSERT INTO myDatabsae (Id, ProgramName, ProgramDetail) VALUES (1, 'Test Characters ÜŞiçÇÖö', 'löşüIIğĞü');"
con.execute_non_query(INSERT_EX_SQL)
con.close()

写入数据库的数据已损坏:

Sadly the data that was written to DB is corrupted:

我的mssql数据库的Collacation是: Turkish_CI_AS
如何解决?

The Collacation of my mssql db is: Turkish_CI_AS How can this be solved?

推荐答案

这是一个可能的解决方案

关键是 INSERT_EX_SQ.encode您的语言编码器)
尝试这样:

The key is INSERT_EX_SQ.encode('your language encoder'). Try this instead:

con.execute_non_query(INSERT_EX_SQ.encode('your language encoder'))

这篇关于python到mssql编码的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆