Câu lệnh SELECT được sử dụng để đọc các giá trị từ cơ sở dữ liệu.
Nội dung chính
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()
Kết quả:
('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)
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)
Đị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