当db使用latin1编码时,我不知道如何连接到mysql db。 我尝试并按照文档,我正在使用mysqlclient==1.3.5
这里是我的数据库连接设置。如何在Django中设置character_set_results latin1 mysql?
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'test_api',
'USER': 'admin',
'PASSWORD': '123456',
'HOST': '192.168.59.103',
'PORT': '3306',
'OPTIONS': {
'charset': 'latin1', 'use_unicode': False
},
}
}
37 Phẩm Bồ tát hạnh
Am mây ngủ
An cứ kiết hạ
An lạc từ tâm
An lạc từng bước chân
Ãnh Sáng Từ Bi
但它没有成功,所以接下来我尝试使用pymysql在下面编写一个简单的脚本,它工作正常。
# -*- coding: utf-8 -*-
import pymysql
connection = pymysql.connect(host='192.168.59.103', port=3306, user='admin', passwd='123456', db='test_api', use_unicode=False)
customers = connection.cursor(pymysql.cursors.DictCursor)
customers.execute('SET character_set_results=\'latin1\'')
customers.execute('SELECT * FROM bz_media_album ORDER BY name_vn')
for customer in customers:
print customer['name_vn']
37 Phẩm Bồ tát hạnh
Am mây ngủ
An cứ kiết hạ
An lạc từ tâm
An lạc từng bước chân
Ánh Sáng Từ Bi
我也觉得https://stackoverflow.com/a/25685134/523075 但不知道如何实现它。
因为我所有的表使用latin1的,我的问题是如何character_set_results Django的游标,因为我使用Django和tastypie开发移动API。我也有模型和资源。
但我不希望在当前的分贝触摸,因为它有很多使用该数据库已经服务。 – giaosudau