【发布时间】:2015-06-21 18:58:03
【问题描述】:
当db使用latin1编码时,我不知道如何连接到mysql db。
我正在尝试关注文档,我正在使用mysqlclient==1.3.5 这是我的数据库连接设置。
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,而我的问题是如何为 django 光标设置 character_set_results,因为我使用 django 和 sweetpie 开发移动 api。我也有模型和资源。
【问题讨论】:
标签: python mysql django character-encoding latin1