2012-12-12 36 views
13

thể trùng lặp:
MySQL-db lib for Python 3.0?Python 3.3 Mysql nối

tôi sử dụng python3.3 và không thể kết nối với MySQL, bởi vì tôi không tìm thấy mô-đun cho kết nối MySQL.

Làm cách nào để kết nối với MySQL bằng python3.3?

+1

Đây là bản sao của http://stackoverflow.com/questions/4960048/python-3-and-mysql và/hoặc http://stackoverflow.com/questions/384471/mysql-db-lib-for- python-3-0. – abarnert

+4

Trên thực tế không trùng lặp: Tôi đã tìm kiếm dài và cứng cho một trình kết nối cho python3.2. Thật không may là đầu nối không hoạt động với 3,3 – Sheena

Trả lời

16

Có một module gọi là Pymysql mà bạn có thể thích:

"""This pure Python MySQL client provides a DB-API to a MySQL database by talking directly to the server via the binary client/server protocol.""" 

import pymysql 
conn = pymysql.connect(host='127.0.0.1', unix_socket='/tmp/mysql.sock', user='root', passwd=None, db='mysql') 
cur = conn.cursor() 
cur.execute("SELECT Host,User FROM user") 
for response in cur: 
    print(response) 
cur.close() 
conn.close() 
+0

Bất kỳ ý tưởng nào về cách tôi có thể sử dụng Windows để kết nối bằng cách sử dụng? Có vẻ như có vấn đề khi tôi sử dụng mã này cho python 3.3 trên windows – CodeGuru

+2

@ User1291223, chỉ cần xóa "unix_socket = .... "từ các đối số hàm kết nối. –

8

Theo như tôi biết, không ai đã chuyển mô-đun mở rộng C cho mysql để Python 3, nhưng có ít nhất hai thuần Python module mà chỉ làm việc tốt với Python 3 (và cũng với PyPy, vv):

Một google nhanh cho python3 mysql bật lên một vài chi tiết (cũng như các con trỏ khác nhau cho hai dự án này, bao gồm các câu hỏi SO trước đó hỏi chính xác điều tương tự).

Các vấn đề liên quan