Lệnh SELECT MySQL trong Python
Khi đã tạo cơ sở dữ liệu, tạo bảng. Để truy xuất được dữ liệu MySQL trong Python, chúng ta sẽ thực hiện Lệnh SELECT MySQL trong Python. Cùng eLib theo dõi bài viết dưới đây.
Mục lục nội dung
1. Phương thức fetchall()
Python cung cấp phương thức fetchall() trả về dữ liệu được lưu trữ bên trong bảng dưới dạng các hàng. Chúng ta có thể lặp lại kết quả để có được các hàng riêng lẻ.
Ví dụ 1
import mysql.connector
#tạo đối tượng connection
myconn = mysql.connector.connect(host = "localhost", user = "root",
passwd = "1234567890", database = "PythonDB")
#tạo đối tượng cursor
cur = myconn.cursor()
try:
# select dữ liệu từ database
cur.execute("SELECT * FROM Employee")
# tìm nạp các hàng từ đối tượng con trỏ
result = cur.fetchall()
for x in result:
print(x);
except:
myconn.rollback()
myconn.close()
('The Mac', 10001, 25000.0, 101, 'Hanoi')
('Vinh', 10002, 26000.0, 101, 'Hanoi')
('Trung', 10003, 26000.0, 102, 'Danang')
('Tân', 10004, 10000.0, 101, 'Hanoi')
('Quân', 10005, 30000.0, 103, 'HCM')
Ví dụ 2: đọc cột cụ thể
import mysql.connector
#tạo đối tượng connection
myconn = mysql.connector.connect(host = "localhost", user = "root",
passwd = "1234567890", database = "PythonDB")
#tạo đối tượng cursor
cur = myconn.cursor()
try:
# select dữ liệu từ database
cur.execute("SELECT name, id, salary FROM Employee")
# tìm nạp các hàng từ đối tượng con trỏ
result = cur.fetchall()
for x in result:
print(x);
except:
myconn.rollback()
myconn.close()
Kết quả:
('The Mac', 10001, 25000.0)
('Vinh', 10002, 26000.0)
('Trung', 10003, 26000.0)
('Tân', 10004, 10000.0)
('Quân', 10005, 30000.0)
2. Phương thức fetchone()
Phương thức fetchone() được sử dụng để chỉ tìm nạp một hàng từ bảng. Phương thức fetchone () trả về hàng tiếp theo của tập kết quả.
Ví dụ:
import mysql.connector
#tạo đối tượng connection
myconn = mysql.connector.connect(host = "localhost", user = "root",
passwd = "1234567890", database = "PythonDB")
#tạo đối tượng cursor
cur = myconn.cursor()
try:
# select dữ liệu từ database
cur.execute("SELECT name, id, salary FROM Employee")
# tìm nạp hàng đầu tiên từ đối tượng con trỏ
result = cur.fetchone()
print(result);
# tìm nạp hàng tiếp theo từ đối tượng con trỏ
result = cur.fetchone()
print(result);
except:
myconn.rollback()
myconn.close()
Kết quả:
('The Mac', 10001, 25000.0)
('Vinh', 10002, 26000.0)
3. Định dạng kết quả
Ví dụ:
import mysql.connector
#tạo đối tượng connection
myconn = mysql.connector.connect(host = "localhost", user = "root",
passwd = "1234567890", database = "PythonDB")
#tạo đối tượng cursor
cur = myconn.cursor()
try:
# select dữ liệu từ database
cur.execute("SELECT name, id, salary FROM Employee")
# tìm nạp các hàng từ đối tượng con trỏ
result = cur.fetchall()
print("Name ID Salary")
for row in result:
print("%s %d %d"%(row[0],row[1],row[2]))
except:
myconn.rollback()
Kết quả:
Name ID Salary
The Mac 10001 25000
Vinh 10002 26000
Trung 10003 26000
Tân 10004 10000
Quân 10005 30000
Trên đây là bài viết của eLib.VN về Lệnh SELECT MySQL trong Python. Hy vọng qua bài này bạn sẽ hiểu và vận dụng trong quá trình học tập và làm việc với Python. Chúc các bạn thành công!