Salutationspython pour MSSQL problème codant
En utilisant bibliothèque pymssql, je veux écrire des données dans une base de données MSSQL mais je rencontre encodant des questions. Voici mon exemple de code pour écrire à la 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()
Malheureusement les données qui a été écrit à la DB est corrompu:
Le Collacation de mon MSSQL db est: Turkish_CI_AS
Comment Cela doit être résolu?
Est-ce que la spécification de la chaîne est explicite comme aide unicode? par exemple. 'INSERT_EX_SQL = u" INSCRIRE dans myDatabsae (Id, ProgramName, ProgramDetail) VALEURS (1, 'Caractères de test ÜŞiçÇöö', 'löşüIIğĞü'); "' – Kimvais
Si je unicode la requête, je reçois une telle erreur: UnicodeEncodeError: codec 'ascii' ne peut pas encoder les caractères dans la position 84-85: ordinal pas dans la gamme (128) – Hellnar