Hướng dẫn python mysql cursor - con trỏ mysql python

MySQL là một hệ cơ sở dữ liệu quan hệ phổ biến nhất hiện nay. Rất nhiều ngôn ngữ có thể kết nối đến MySQL và Python cũng không ngoại lệ.

Nội dung chính

  • 9.1. Cài đặt MySQLdb
  • 9.2. Kết nối đến MySQL Server
  • 9.3. Kết nối với charset utf8
  • 9.4. Query dữ liệu
  • 9.5. Fetch dữ liệu
  • 9.7. Prepared Statement

Mặc định Python không có thư viện để kết nối đến MySQL server. Trong phần này, để kết nối đến MySQL Server từ Python, chúng ta sẽ sử dụng module

import MySQLdb
1

9.1. Cài đặt MySQLdb

9.2. Kết nối đến MySQL Server

Hướng dẫn python mysql cursor - con trỏ mysql python

$ sudo pip install MySQL-python

9.3. Kết nối với charset utf8https://pypi.python.org/pypi/MySQL

9.4. Query dữ liệu

import MySQLdb

9.5. Fetch dữ liệu

sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib

9.2. Kết nối đến MySQL Server

9.3. Kết nối với charset utf8

9.4. Query dữ liệu

import MySQLdb

dbcon = MySQLdb.connect(host = 'localhost', user = 'myusername', passwd = 'mypassword', db = 'mydbname ')

9.5. Fetch dữ liệutry để bắt lỗi như sau:

import MySQLdb

db = None

try:

db = MySQLdb.connect(host = 'localhost', user = 'root', passwd = 'root', db = 'mysql')

except MySQLdb.Error, e:
      print "Error %d: %s" % (e.args[0],e.args[1])
      sys.exit(1)

if db:
      cur = db.cursor()
      cur.execute("SELECT VERSION()")
      ver = cur.fetchone()
      print "Database version : %s " % ver

9.3. Kết nối với charset utf8

9.4. Query dữ liệu

...
db = MySQLdb.connect(host = 'localhost', user = 'ro ot', passwd = 'root', db = 'test', charset = 'utf8')

9.5. Fetch dữ liệu

9.4. Query dữ liệu

9.5. Fetch dữ liệucursor của MySQLdb. Ví dụ:

import MySQLdb

db = MySQLdb.connect(host = 'localhost', user = 'ro ot', passwd = 'root', db = 'mysql');
cursor = db.cursor()
sql = 'SELECT * FROM user'
cursor.execute(sql)
myusers = cursor.fetchall()

9.7. Prepared Statement

import MySQLdb
8 là:
import MySQLdb
9

Mặc định Python không có thư viện để kết nối đến MySQL server. Trong phần này, để kết nối đến MySQL Server từ Python, chúng ta sẽ sử dụng module

import MySQLdb
1

import MySQLdb

db = MySQLdb.connect(host = 'localhost', user = 'ro ot', passwd = 'root', db = 'mysql')
cursor = db.cursor(MySQLdb.cursors.DictCursor) ...

9.5. Fetch dữ liệu

9.7. Prepared Statementkhi đã

sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
4
sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
5
sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
6 .

  • Mặc định Python không có thư viện để kết nối đến MySQL server. Trong phần này, để kết nối đến MySQL Server từ Python, chúng ta sẽ sử dụng module
    import MySQLdb
    1
    : chỉ fetch một dòng dữ liệu. Nếu muốn fetch nhiều dòng dữ liệu thì có thể gọi nhiều lần, mỗi lần sẽ trả về một dòng dữ liệu. Tốt cho trường hợp truy vấn rất nhiều dữ liệu một lúc. Nếu trả về
    sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
    8 tức là đã fetch hết dữ liệu từ câu truy vấn.
  • Cài đặt thông qua
    import MySQLdb
    2 như sau:
  • Tham khảo thêm tại: https://pypi.python.org/pypi/MySQL

Khai báo module MySQLdb là có thể sử dụng.

import MySQLdb
db = MySQLdb.connect(...)
db.close()

Trong một số trường hợp đã cài MySQLdb nhưng import báo lỗi thiếu file

import MySQLdb
3 . Nguyên nhân có thể là do hiện tại đường dẫn đến file không tồn tại. Thử tạo symlink hoặc sử dụng câu lệnh sau để tạo symlink từ file 
import MySQLdb
3 đến thư mục
import MySQLdb
5cursor khi không còn sử dụng theo ví dụ:

import MySQLdb
db = MySQLdb.connect(...)
cursor = db.cursor()
cursor.close()
db.close()

9.7. Prepared Statement

Mặc định Python không có thư viện để kết nối đến MySQL server. Trong phần này, để kết nối đến MySQL Server từ Python, chúng ta sẽ sử dụng module

import MySQLdb
1

import MySQLdb
0

Cài đặt thông qua

import MySQLdb
2 như sau: