Trước khi đi sâu vào các chương trình Python-MySQL, bạn nên có-

Bạn đang xem: kết nối với cơ sở dữ liệu mysql bằng python

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách kết nối cơ sở dữ liệu MySQL với chương trình Python và viết các truy vấn khác nhau. Chúng ta sẽ bắt đầu với phần giới thiệu cơ bản, đi qua MySQL được thiết lập bằng Python, sau đó thực thi các truy vấn khác để tạo, đọc, xóa và cập nhật dữ liệu. Hãy bắt đầu bằng phần giới thiệu.

Sử dụng MySQL với Python

MySQL là một trong những hệ quản trị cơ sở dữ liệu được sử dụng rộng rãi và phổ biến hiện nay. Nó hỗ trợ hầu hết mọi ngôn ngữ lập trình phổ biến hiện có như PHP, Python, Java, v.v. Tuy nhiên, để kết nối MySQL với bất kỳ ngôn ngữ lập trình nào, bạn cần một trình điều khiển kết nối ngôn ngữ lập trình với cơ sở dữ liệu và giúp tương tác với nó. Trong Python, bạn cần một trình điều khiển MySQL để truy cập cơ sở dữ liệu MySQL. Python cung cấp một trình điều khiển dưới dạng một gói có tên “Mysql-connector-Python”, bạn có thể cài đặt trình điều khiển này bằng PIP.

Nếu bạn có ít kinh nghiệm về Python, bạn phải biết và quen thuộc với PIP, một trình quản lý gói và đã được cài đặt hầu hết thời gian. Đủ lý thuyết cho bây giờ. Hãy xem cách thiết lập.

Cũng đọc: MySQL STRCMP () – Cách so sánh hai chuỗi trong MySQL?

Điều kiện tiên quyết

Trước khi đi sâu vào các chương trình Python-MySQL, bạn nên có-

  • Máy chủ MySQL được cài đặt trên máy cục bộ của bạn. Hoặc, bạn cũng có thể sử dụng MariaDB (đi kèm với XAMPP) là một nhánh của MySQL và cung cấp các chức năng và tính năng tương tự.
  • Python đã được cài đặt trên máy cục bộ của bạn và đảm bảo rằng biến môi trường đã được thiết lập. Đảm bảo bạn có phiên bản Python mới nhất (Không cần thiết nhưng phải là & gt; = phiên bản 3. *. *).
  • PIP được cài đặt với bộ biến môi trường.

Tôi hy vọng bạn đã quen với phần mềm trên và đã cài đặt chúng trên máy tính của mình.

Cài đặt trình kết nối Python MySQL

Trước tiên, hãy tải xuống và cài đặt trình kết nối Python MySQL bằng lệnh PIP sau.

python -m pip cài đặt mysql-connector-python

Trình kết nối được cài đặt thành công. Kiểm tra xem quá trình cài đặt có thành công hay không bằng một chương trình đơn giản.

Tạo tệp Python với bất kỳ tên nào khác ngoài “MySQL” vì đó là tên mô-đun mà chúng tôi đã cài đặt ngay bây giờ và viết mã sau.

nhập mysql.connector

Câu lệnh nhập sẽ nhập trình kết nối và sử dụng nó trong suốt chương trình. Bây giờ, chỉ cần chạy chương trình để kiểm tra xem bạn có gặp lỗi hay không trên màn hình xuất.

Nếu trình kết nối hoạt động tốt, đầu ra phải trống.

Tạo Kết nối Python-MySQL

< / p>

Trước khi viết chương trình cho kết nối Python-MySQL, hãy đảm bảo rằng bạn đã khởi động máy chủ MySQL. Nếu bạn đã cài đặt XAMPP trên máy của mình, hãy khởi động apache và MySQL từ bảng điều khiển XAMPP. Nếu bạn đã cài đặt MySQL và XAMPP trên máy tính của mình, bạn chỉ phải khởi động một trong số chúng. Trong hướng dẫn này, chúng tôi sẽ sử dụng dòng lệnh MariaDB. Các lệnh tương tự có thể áp dụng cho MySQL; không có thay đổi ở đó.

Trước tiên, bạn cần có tên người dùng và mật khẩu cơ sở dữ liệu MySQL để tạo kết nối. Sau đây là chương trình tạo kết nối-

nhập mysql.connector làm myconn
mydb = myconn.connect (
  host = "localhost",
  user = "root",
  mật khẩu = ""
)
in (mydb)
obj = mydb.cursor ();
in (obj)

Trong chương trình này, tên người dùng là “root” và mật khẩu để trống, vì vậy chỉ sử dụng dấu ngoặc kép mà không có bất kỳ ký tự nào. “Mydb” là một đối tượng kết nối và “obj” là một đối tượng giúp chúng tôi thực hiện các truy vấn được tạo bằng cách sử dụng đối tượng con trỏ có sẵn trong Python. Khi chúng tôi chạy chương trình, nó sẽ hiển thị kết quả sau-

Kiểm tra kết nối Python Mysql Kiểm tra kết nối Python Mysql

Chúng tôi sẽ sử dụng biến” obj “để thực thi các truy vấn.

Tạo Cơ sở dữ liệu MySQL bằng Python

Chúng tôi sử dụng truy vấn “CREATE DATABASE dbname” để tạo cơ sở dữ liệu. Đoạn mã sau sẽ kiểm tra xem cơ sở dữ liệu có tên “mydb” đã tồn tại hay chưa. Nếu không, sau đó tạo một cái mới.

nhập mysql.connector làm myconn
mydb = myconn.connect (
  host = "localhost",
  user = "root",
  mật khẩu = ""
)
obj = mydb.cursor ();
obj.execute ("TẠO CƠ SỞ DỮ LIỆU NẾU KHÔNG TỒN TẠI mydb");

Câu lệnh obj.execute () sẽ tạo cơ sở dữ liệu mới với tên mydb. Nếu bạn chạy chương trình nhiều lần, chương trình sẽ không hiển thị bất kỳ lỗi nào vì nó sẽ đơn giản bỏ qua nếu cơ sở dữ liệu tồn tại. Hãy kiểm tra xem cơ sở dữ liệu có được tạo từ dòng lệnh MySQL / MariaDB hay không.

HIỂN THỊ DỮ LIỆU;

Hiển thị cơ sở dữ liệu Show Database

Ngoài ra, nếu bạn đã tạo cơ sở dữ liệu và muốn sử dụng nó trong chương trình của mình mà không cần tạo, bạn có thể chỉ định tên khi tạo kết nối. Kiểm tra bên dưới-

nhập mysql.connector làm myconn
mydb = myconn.connect (
  host = "localhost",
  user = "root",
  mật khẩu = "",
  cơ sở dữ liệu = "mydb"
)

Lưu ý rằng nếu cơ sở dữ liệu được chỉ định không tồn tại, bạn sẽ gặp lỗi là “cơ sở dữ liệu không xác định *”. Vì vậy, hãy viết chính xác tên cơ sở dữ liệu.

Chúng tôi đã tạo cơ sở dữ liệu thành công. Bây giờ chúng tôi sẽ tạo một bảng, chèn dữ liệu vào đó và thực hiện các thao tác đọc, cập nhật và xóa.

Tạo Bảng MySQL bằng Python

Hãy tạo một bảng với tên “sinh viên” để lưu trữ thông tin cơ bản của sinh viên như id, tên và tuổi.

nhập mysql.connector làm myconn
mydb = myconn.connect (
  host = "localhost",
  user = "root",
  mật khẩu = "",
  cơ sở dữ liệu = "mydb"
)
obj = mydb.cursor ();
obj.execute ("TẠO BẢNG sinh viên (id INT PRIMARY KEY AUTO_INCREMENT, tên VARCHAR (100), tuổi INT)")

Sau khi thực hiện chương trình, chương trình sẽ tạo một bảng “học sinh”. Kiểm tra xem nó có được tạo thành công từ thiết bị đầu cuối hay không bằng cách sử dụng lệnh sau.

SỬ DỤNG mydb;
HIỂN THỊ BẢNG BIỂU;

Hiển thị bảng trong cơ sở dữ liệu Hiển thị bảng trong cơ sở dữ liệu

Sử dụng Python để Chèn Dữ liệu vào Bảng MySQL

Bây giờ, hãy chèn một số dữ liệu thông qua chương trình Python vào bảng sinh viên.

nhập mysql.connector làm myconn
mydb = myconn.connect (
  host = "localhost",
  user = "root",
  mật khẩu = "",
  cơ sở dữ liệu = "mydb"
)
obj = mydb.cursor ();
obj.execute ("CHÈN VÀO giá trị học sinh (tên, tuổi) ('Raj', 16), ('Tom', 15), ('John', 17)")
mydb.commit ()

Đảm bảo viết câu lệnh mydb.commit () để thực hiện các thay đổi trong bảng. Nếu không được viết, sẽ không có thay đổi nào diễn ra.

Hãy kiểm tra xem dữ liệu có được chèn chính xác vào bảng từ thiết bị đầu cuối MySQL hay không.

CHỌN * TỪ sinh viên;

Kiểm tra dữ liệu trong bảng Kiểm tra Dữ liệu Trong Bảng

Chúng tôi đã sử dụng thiết bị đầu cuối MySQL để kiểm tra dữ liệu bảng tính đến thời điểm hiện tại. Nhưng nếu chúng ta muốn tìm nạp dữ liệu bằng chương trình Python thì sao? Hãy lấy một ví dụ để tìm nạp dữ liệu từ cơ sở dữ liệu.

Tìm nạp Dữ liệu Bảng bằng Python

Chúng tôi có thể sử dụng truy vấn “CHỌN * TỪ” để tìm nạp dữ liệu từ bảng cơ sở dữ liệu. Có nhiều hàng hiện diện trong bảng sinh viên, vì vậy chúng ta phải sử dụng câu lệnh lặp để lấy mọi bản ghi.

nhập mysql.connector làm myconn
mydb = myconn.connect (
  host = "localhost",
  user = "root",
  mật khẩu = "",
  cơ sở dữ liệu = "mydb"
)
obj = mydb.cursor ();
obj.execute ("CHỌN * từ sinh viên")
result = obj.fetchall ()
cho hàng trong kết quả:
    in (hàng)

Ở đây, câu lệnh obj.fetchall () được sử dụng để tìm nạp tất cả các hàng từ câu lệnh được thực thi cuối cùng. Sau khi thực hiện chương trình trên, bạn sẽ xuất ra như bên dưới.

Tìm nạp dữ liệu bảng trong Python Tìm nạp dữ liệu bảng trong Python

Nếu bạn muốn lấy dữ liệu của các cột cụ thể, hãy chỉ định tên cột sau SELECT.

nhập mysql.connector làm myconn
mydb = myconn.connect (
  host = "localhost",
  user = "root",
  mật khẩu = "",
  cơ sở dữ liệu = "mydb"
)
obj = mydb.cursor ();
obj.execute ("CHỌN id, tên từ sinh viên")
result = obj.fetchall ()
cho x trong kết quả:
    print (x)

Tìm nạp dữ liệu của các cột cụ thể Tìm nạp dữ liệu của các cột cụ thể

Tương tự, bạn cũng có thể tìm nạp hàng đầu tiên chỉ bằng cách sử dụng câu lệnh fetchone () .

nhập mysql.connector làm myconn
mydb = myconn.connect (
  host = "localhost",
  user = "root",
  mật khẩu = "",
  cơ sở dữ liệu = "mydb"
)
obj = mydb.cursor ();
obj.execute ("CHỌN * từ sinh viên")
result = obj.fetchone ()
in (kết quả)

Chúng tôi sẽ chỉ có một hàng ở đây, vì vậy chúng tôi không cần sử dụng vòng lặp FOR.

Chỉ tìm nạp hàng đầu tiên Chỉ tìm nạp hàng đầu tiên

Cập nhật dữ liệu bảng MySQL bằng Python

Chúng tôi có thể cập nhật dữ liệu hiện có trong bảng bằng câu lệnh UPDATE . Đảm bảo viết câu lệnh commit () sau truy vấn cập nhật để lưu các thay đổi trong cơ sở dữ liệu.

Trong chương trình sau, chúng tôi sẽ cập nhật tuổi của một học sinh tên là Raj.

nhập mysql.connector làm myconn
mydb = myconn.connect (
    host = "localhost",
    user = "root",
    mật khẩu = "",
    cơ sở dữ liệu = "mydb"
)
obj = mydb.cursor ()
obj.execute ("CẬP NHẬT học sinh SET tuổi = 18 WHERE name = 'Raj'")
mydb.commit ()
print ("dữ liệu cập nhật là -")
obj.execute ("CHỌN * từ sinh viên")
result = obj.fetchall ()
cho x trong kết quả:
    print (x)

Ở đây, chúng tôi đã sử dụng mệnh đề WHERE để nhắm mục tiêu hàng bao gồm “Raj”. Nếu chúng ta không viết mệnh đề WHERE , truy vấn sẽ cập nhật tất cả các hàng trong bảng thay vì chỉ một hàng. Sau đây là kết quả khi chúng tôi chạy chương trình.

Cập nhật dữ liệu bảng Cập nhật dữ liệu bảng

Xóa dữ liệu bảng bằng Python < p class = "ez-toc-section-end">

Chúng tôi có thể xóa dữ liệu bảng bằng câu lệnh “DELETE FROM”.

Hãy nhớ viết câu lệnh commit () sau khi xóa bản ghi để lưu các thay đổi trong bảng. Ngoài ra, hãy sử dụng mệnh đề WHERE để nhắm mục tiêu một hàng hoặc bản ghi cụ thể. Nếu bạn không sử dụng mệnh đề WHERE , bạn sẽ mất tất cả dữ liệu trong bảng.

Trong chương trình sau, chúng tôi sẽ xóa hồ sơ của học sinh có id là 3. Chúng tôi cũng có thể thực hiện hành động xóa bằng cách sử dụng tên hoặc tuổi.

nhập mysql.connector làm myconn
mydb = myconn.connect (
    host = "localhost",
    user = "root",
    mật khẩu = "",
    cơ sở dữ liệu = "mydb"
)
obj = mydb.cursor ()
obj.execute ("XÓA khỏi sinh viên WHERE id = 3")
mydb.commit ()
print ("dữ liệu cập nhật là -")
obj.execute ("CHỌN * từ sinh viên")
result = obj.fetchall ()
cho x trong kết quả:
    print (x)

Sau câu lệnh DELETE , chương trình sẽ thực hiện truy vấn SELECT để hiển thị tất cả các bản ghi mới nhất.

Xóa dữ liệu khỏi bảng Xóa dữ liệu khỏi bảng

Kết luận – Python MySQL Kết nối

Trong bài viết này, chúng ta đã tìm hiểu kết nối Python MySQL và các truy vấn MySQL khác nhau như CHỌN, CẬP NHẬT và XÓA trong chương trình Python, cùng với các ví dụ. MySQL với Python là một chủ đề rộng và chúng ta có thể có một loạt bài viết đầy đủ về nó. Tuy nhiên, hướng dẫn này sẽ tập trung vào phần giới thiệu và thiết lập cơ bản của MySQL với Python mà không đi sâu. Bạn có thể mong đợi một hướng dẫn chi tiết về Python-MySQL tại đây trong tương lai. Cho đến khi đó, bạn có thể thực hành các khái niệm trung cấp và nâng cao như mệnh đề, phép nối và lệnh thay đổi bảng. Hẹn gặp lại các bạn trong bài hướng dẫn sau!


Xem thêm những thông tin liên quan đến chủ đề kết nối với cơ sở dữ liệu mysql bằng python

Bài 17: Kết nối với MySQL trong Python

alt

  • Tác giả: Tư duy lập trình Học
  • Ngày đăng: 2017-03-13
  • Đánh giá: 4 ⭐ ( 9694 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Kết nối MySQL bằng python.
    Sử dụng các câu lệnh select, update, insert trong Python.
    Source code và link tham khảo các bạn vào: https://duyminh215.github.io/python/2017/03/16/video-tutorial-bai-17-ket-noi-den-mysql-trong-python.html

Bài 2 – Tạo cơ sở dữ liệu mới MySQL trong Python

  • Tác giả: www.vniteach.com
  • Đánh giá: 4 ⭐ ( 3013 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Để có thể chứa các dữ liệu chúng ta sẽ lưu chúng vào cơ sở dữ liệu, do đó đầu tiên chúng ta cần biết cách tạo cơ sở dữ liệu mới MySQL, có 2 cách để tạo mới cơ sở dữ liệu là thực hiện trực tiếp trên máy chủ MySQL hoặc dùng câu

Kết nối cơ sở dữ liệu MySQL trong Python sử dụng PyMySQL

  • Tác giả: openplanning.net
  • Đánh giá: 5 ⭐ ( 1955 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

[Tự học python] Kết nối MySQLdb trong Python

  • Tác giả: cafedev.vn
  • Đánh giá: 3 ⭐ ( 2570 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Trong bài này, chúng ta sẽ tìm hiểu về cách kết nối từ xa tới cơ sở dữ liệu MySQL bằng cách sử dụng Python.

Tạo một Ứng dụng Web từ đầu Sử dụng Python Flask và MySQL

  • Tác giả: code.tutsplus.com
  • Đánh giá: 4 ⭐ ( 3307 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Trong loạt bài này, chúng ta sẽ sử dụng Python, Flask và MySQL để tạo ra một ứng dụng web đơn giản từ đầu. Nó sẽ là một ứng dụng danh sách điều ước đơn giản, nơi người dùng có thể đăng ký, đăng…

Kết nối MySQL với Python

  • Tác giả: laptrinhtudau.com
  • Đánh giá: 4 ⭐ ( 4891 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Kết nối MySQL với Python – Lập Trình Từ Đầu c MySQL trong Python

Kết nối với MySQL và tạo database mẫu

  • Tác giả: comdy.vn
  • Đánh giá: 5 ⭐ ( 8568 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Trong hướng dẫn này, bạn sẽ học cách kết nối với máy chủ MySQL bằng chương trình dòng lệnh mysql và MySQL Workbench.

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

Xem Thêm  Làm thế nào để kết nối cơ sở dữ liệu với PHP? - php kết nối với cơ sở dữ liệu

By ads_php