Python có thể kết nối với cơ sở dữ liệu nào?

Cơ sở dữ liệu rất quan trọng để lưu trữ và xử lý dữ liệu ngay cả khi bạn xem xét một ngôn ngữ lập trình mạnh mẽ như Python. Bạn đã bao giờ tự hỏi toàn bộ tập dữ liệu lớn này được lưu trữ hoặc tìm nạp từ đâu chưa?

Bắt đầu nào. )

Cơ sở dữ liệu là gì?

Cơ sở dữ liệu về cơ bản là một tập hợp dữ liệu có cấu trúc theo cách có thể dễ dàng truy xuất, quản lý và truy cập theo nhiều cách khác nhau. Một trong những dạng cơ sở dữ liệu đơn giản nhất là cơ sở dữ liệu văn bản. Cơ sở dữ liệu quan hệ là hệ thống cơ sở dữ liệu phổ biến nhất bao gồm những điều sau đây

  • mysql
  • Cơ sở dữ liệu Oracle
  • máy chủ SQL
  • Sybase
  • Informix
  • IBM db2
  • KHÔNG CÓ SQL


Trong số tất cả các cơ sở dữ liệu này, MySQL là một trong những cơ sở dữ liệu dễ làm việc nhất. Hãy để tôi hướng dẫn bạn chi tiết về điều này

MySQLdb là gì?

MySQLdb là một hệ thống quản lý cơ sở dữ liệu quan hệ có sẵn miễn phí mã nguồn mở sử dụng Ngôn ngữ truy vấn có cấu trúc. Bây giờ một trong những câu hỏi quan trọng nhất ở đây là "SQL là gì?"

SQL (Ngôn ngữ truy vấn có cấu trúc) là ngôn ngữ chuẩn cho cơ sở dữ liệu quan hệ cho phép người dùng thực hiện các thao tác khác nhau trên dữ liệu như Thao tác, Tạo, Xóa, v.v. Tóm lại, SQL cho phép bạn làm bất cứ điều gì với dữ liệu

Hãy tiếp tục và đi sâu vào kết nối cơ sở dữ liệu Python, trong đó bạn sẽ tìm hiểu cách kết nối với cơ sở dữ liệu

Python kết nối với cơ sở dữ liệu như thế nào?

Rất đơn giản để kết nối Python với cơ sở dữ liệu. Tham khảo hình ảnh bên dưới minh họa kết nối Python với cơ sở dữ liệu trong đó cách yêu cầu kết nối được gửi tới trình kết nối MySQL Python, được chấp nhận từ cơ sở dữ liệu và con trỏ được thực thi với dữ liệu kết quả

Python có thể kết nối với cơ sở dữ liệu nào?

Trước khi kết nối với cơ sở dữ liệu MySQL, hãy đảm bảo rằng bạn đã cài đặt trình cài đặt MySQL trên máy tính của mình. Nó cung cấp một bộ công cụ toàn diện giúp cài đặt MySQL với các thành phần sau

      • máy chủ mysql
      • Tất cả các kết nối có sẵn
      • Bàn làm việc MySQL
      • Trình thông báo MySQL
      • Công cụ dành cho Excel và Microsoft Visual Studio
      • Cơ sở dữ liệu mẫu MySQL
      • Tài liệu MySQL

Để tải xuống trình cài đặt MySQL, vui lòng xem qua video sau đây nói về các bước khác nhau mà bạn cần thực hiện trong khi cài đặt MySQL

Làm cách nào để cài đặt MySQL trên Windows10?. Edureka

Video này thảo luận về các bước khác nhau mà bạn cần thực hiện khi cài đặt MySQL trên Windows

Trước khi tiếp tục, bạn nên đảm bảo rằng bạn đã cài đặt MySQL db trên máy tính của mình. Tham khảo các lệnh dưới đây để cài đặt MySQL trong dấu nhắc lệnh và pycharm

Sử dụng Pip

Chỉ huy

pip cài đặt trình kết nối mysql

Sử dụng Pycharm

Chỉ huy

import mysql.connector 

đầu ra

C. UsersHarshit_KantPycharmProjectstest1venvScriptspython. exe C. /Users/Harshit_Kant/PycharmProjects/test1/venv/python-db-conn. py

Quá trình kết thúc với mã thoát 0

Tiếp tục trong bài viết này với Kết nối cơ sở dữ liệu Python, chúng ta hãy xem các tham số cần thiết để kết nối với cơ sở dữ liệu

  • Tên người dùng- Nó chỉ đơn giản là tên người dùng bạn cung cấp để làm việc với máy chủ MySQL, tên người dùng mặc định là root
  • Mật khẩu- Mật khẩu được cung cấp bởi người dùng khi bạn đã cài đặt cơ sở dữ liệu MySQL. Tôi đang cung cấp mật khẩu ở đây là 'password123'
  • Tên máy chủ- Về cơ bản, đây là tên máy chủ hoặc địa chỉ IP mà MySQL của bạn đang chạy, Nếu đó là 'máy chủ cục bộ', thì địa chỉ IP của bạn là 127. 0. 0. 0

Tôi sẽ chỉ cho bạn từ góc độ mã hóa để kết nối python với cơ sở dữ liệu MySQL

Ví dụ

import mysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123") // I have used 'host','username','password'

print(mydb)

đầu ra

C. UsersHarshit_KantPycharmProjectstest1venvScriptspython. exe C. /Users/Harshit_Kant/PycharmProjects/test1/venv/python-db-conn. py

Quá trình kết thúc với mã thoát 0

Giải trình. Ở đây 'mydb' chỉ là một ví dụ. Từ đầu ra, bạn có thể thấy rõ rằng nó đã kết nối với cơ sở dữ liệu

Tiếp theo trong Kết nối cơ sở dữ liệu Python, bạn sẽ học cách tạo cơ sở dữ liệu

Tạo cơ sở dữ liệu

Khi kết nối cơ sở dữ liệu được thiết lập, bạn đã sẵn sàng tạo cơ sở dữ liệu của riêng mình, cơ sở dữ liệu này sẽ đóng vai trò là cầu nối giữa máy chủ python và MySQL của bạn

Hãy xem phần thực hiện của nó

Ví dụ

import mysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123")
mycursor=mydb.cursor()
mycursor.execute("create database harshdb")

đầu ra

C. /Users/Harshit_Kant/PycharmProjects/test1/venv/python-db-conn. py

Quá trình kết thúc với mã thoát 0

Giải trình

  • Trong chương trình trên, tôi đã sử dụng con trỏ về cơ bản là một đối tượng được sử dụng để giao tiếp với toàn bộ máy chủ MySQL của bạn thông qua đó tôi có thể tạo cơ sở dữ liệu của riêng mình
  • Bạn có thể thấy từ đầu ra rằng cơ sở dữ liệu của tôi với tên “harshdb” được tạo tùy chỉnh, vì bạn có thể đặt bất kỳ tên nào cho cơ sở dữ liệu của mình

Nếu muốn xem cơ sở dữ liệu trong máy chủ MySQL của mình, bạn có thể triển khai đoạn mã sau trong  pycharm

Ví dụ

import mysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123")
mycursor=mydb.cursor()
mycursor.execute("show databases")

for db in mycursor:
print(db)

đầu ra

C. UsersHarshit_KantPycharmProjectstest1venvScriptspython. exe C. /Users/Harshit_Kant/PycharmProjects/test1/venv/python-db-conn. py
('harshdb',)
('information_schema',)
('mysql',)
(‘performance_schema’,)
(‘sakila’,)
(‘sys’,)
(‘world’,)

Quá trình kết thúc với mã thoát 0

Giải trình

  • Bằng cách triển khai mã được viết ở trên, tôi đã thử hiển thị tất cả các cơ sở dữ liệu hiện có trong máy chủ MySQL


Bây giờ bạn đã tạo cơ sở dữ liệu của mình, hãy đi sâu vào một trong những khía cạnh quan trọng nhất của Kết nối cơ sở dữ liệu Python bằng cách thực hiện một vài thao tác trong đó. Hãy để chúng tôi hiểu điều này một cách chi tiết

Hoạt động cơ sở dữ liệu[CRUD]

Có rất nhiều thao tác mà một lập trình viên có thể thực hiện bằng cách sử dụng cơ sở dữ liệu và SQL để có kiến ​​thức vững chắc về lập trình cơ sở dữ liệu và MySQL

Tôi đã chứng minh các thao tác CRUD bên dưới

  • Create– Là một câu lệnh SQL dùng để tạo một bản ghi trong bảng hay có thể nói nó dùng để tạo một bảng
  • Read- Nó được sử dụng để lấy thông tin hữu ích từ cơ sở dữ liệu
  • Cập nhật- Câu lệnh SQL cụ thể này được sử dụng để cập nhật các bản ghi trong bảng hoặc cập nhật bảng
  • Xóa- Như chính tên gọi, lệnh này được sử dụng để xóa bảng

Chúng ta hãy xem xét từng khía cạnh một cách chi tiết từ góc độ mã hóa

Tạo hoạt động

import mysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123",database=harshdb)

mycursor=mydb.cursor()

mycursor.execute("create table employee(name varchar(250),sal int(20))") 

đầu ra

C. UsersHarshit_KantPycharmProjectstest1venvScriptspython. exe C. /Users/Harshit_Kant/PycharmProjects/test1/venv/python-db-conn. py

Quá trình kết thúc với mã thoát 0

Giải trình

  • Trong chương trình trên, tôi đã tạo một bảng 'nhân viên'
  • Bảng nhân viên có hai trường 'tên' và 'sal'
  • Ở đây, User id là “root” và Mật khẩu là “password123”  được sử dụng để truy cập khắc nghiệtdb

Ảnh chụp màn hình đã cho bên dưới hiển thị bảng 'nhân viên' và trả về các trường 'tên' và 'sal'

Create Operation-Edureka

Để xem bảng mà tôi đã tạo, hãy tham khảo đoạn mã sau trong python

import mysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123",database="harshdb")
mycursor=mydb.cursor()
mycursor.execute("show tables")

for tb in mycursor:
    print(tb)

đầu ra

C. UsersHarshit_KantPycharmProjectstest1venvScriptspython. exe C. /Users/Harshit_Kant/PycharmProjects/test1/venv/python-db-conn. py
('nhân viên',)

Quá trình kết thúc với mã thoát 0

Ảnh chụp màn hình đã cho bên dưới hiển thị bảng 'nhân viên' mà tôi đã tạo

Ảnh chụp màn hình

Show Table-Edureka

Bây giờ bạn đã thấy cách một bảng được tạo, hãy xem cách người dùng có thể tìm nạp các giá trị từ bảng đó

Đọc hoạt động

Hoạt động cụ thể này xảy ra trong các giai đoạn khác nhau. Để làm điều đó, giai đoạn đầu tiên là điền vào bảng

Mã số

import mysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123",database="harshdb")
mycursor=mydb.cursor()

sqlformula = "Insert into employee(name,sal) values(%s,%s)"//'values has placeholders

employees = [("harshit",200000),("rahul", 30000),("avinash", 40000),("amit", 50000),]//Created an array of emplpoyees


mycursor.executemany(sqlformula, employees)//Passing the data

mydb.commit()//SQL statement used for saving the changes

 

đầu ra

C. UsersHarshit_KantPycharmProjectstest1venvScriptspython. exe C. /Users/Harshit_Kant/PycharmProjects/test1/venv/python-db-conn. py

Quá trình kết thúc với mã thoát 0

Trong đoạn mã trên, tôi đã điền dữ liệu bằng cách sử dụng một mảng nhân viên bằng cách viết các câu lệnh SQL bằng Python. Bên dưới ảnh chụp màn hình của cơ sở dữ liệu sẽ hiển thị các thay đổi

Read Operation-Edureka
Ở đây,'harshit' được sử dụng hai lần trong bản ghi khi tạo mảng

giai đoạn 2. Trong giai đoạn này, chúng ta sẽ sử dụng câu lệnh SQL “select” nơi diễn ra thao tác đọc thực tế

  • fetchall()– Hàm cụ thể này tìm nạp tất cả dữ liệu từ câu lệnh được thực hiện cuối cùng
  • fetchone()- Câu lệnh cụ thể này tìm nạp một dữ liệu từ câu lệnh được thực thi cuối cùng

Mã số

import mysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123",database="harshdb")
mycursor=mydb.cursor()

mycursor.execute("select * from employee")

myresult = mycursor.fetchall()

for row in myresult:
    print(row)

đầu ra

('harshit', 200000)
('harshit', 200000)
('rahul', 30000)
(‘avinash’, 40000)
(‘amit’, 50000)

Quá trình kết thúc với mã thoát 0

Giải trình. Trong đoạn mã trên, chúng tôi đã sử dụng hàm 'fetchall()'. Nó tìm nạp tất cả dữ liệu từ câu lệnh được thực thi cuối cùng

Đưa ra dưới đây là ảnh chụp màn hình của cơ sở dữ liệu

fetchall function-Edureka

Mã số

________số 8

đầu ra

C. UsersHarshit_KantPycharmProjectstest1venvScriptspython. exe C. /Users/Harshit_Kant/PycharmProjects/test1/venv/python-db-conn. py
khắc nghiệt

Quá trình kết thúc với mã thoát 0

Giải trình. Trong đoạn mã trên, tôi đã sử dụng chức năng “fetchone()” về cơ bản tìm nạp một dữ liệu từ câu lệnh được thực thi cuối cùng

Đó là tất cả về 'Thao tác đọc', hãy đi sâu vào thao tác Cập nhật

Hoạt động cập nhật

Câu lệnh SQL này được sử dụng để cập nhật các bản ghi trong bảng. Hãy triển khai mã và xem các thay đổi đang diễn ra như thế nào

Mã số

import mysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123",database="harshdb")
mycursor=mydb.cursor()

sql = "Update employee SET sal = 70000 WHERE name = 'harshit'"

mycursor.execute(sql)

mydb.commit()

đầu ra

C. UsersHarshit_KantPycharmProjectstest1venvScriptspython. exe C. /Users/Harshit_Kant/PycharmProjects/test1/venv/python-db-conn. py

Quá trình kết thúc với mã thoát 0

Giải trình. Chúng tôi đã cập nhật hàng “sal” của bản ghi khắc nghiệt trong đoạn mã trên. Ảnh chụp màn hình dưới đây sẽ cung cấp cho bạn một hình ảnh rõ ràng

Ảnh chụp màn hình

Update Operation-Edureka

Như bạn có thể thấy rõ hàng 'sal' của bản ghi 'harshit' được cập nhật thành 70000

Đây là tất cả về thao tác Cập nhật, tiếp tục với bài viết “Kết nối cơ sở dữ liệu Python”, chúng ta sẽ thấy thao tác cuối cùng đó là 'xóa'

Thao tác xóa

Đúng như tên gọi, thao tác Xóa được sử dụng để xóa các bản ghi khỏi bảng. Hãy hiểu nó từ góc độ mã hóa

Mã số

import mysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123") // I have used 'host','username','password'

print(mydb)
0

đầu ra

C. UsersHarshit_KantPycharmProjectstest1venvScriptspython. exe C. /Users/Harshit_Kant/PycharmProjects/test1/venv/python-db-conn. py

Quá trình kết thúc với mã thoát 0

Giải trình. Trong đoạn mã trên, tôi đã xóa một bản ghi 'khắc nghiệt' vì nó được lặp lại hai lần

Ảnh chụp màn hình dưới đây sẽ cho bạn hình ảnh đẹp hơn

Delete Operation-EdurekaNhư bạn có thể thấy rõ từ bản ghi ảnh chụp màn hình 'harshit' đã bị xóa. Chà, bạn có thể thực hiện một bộ thao tác khác từ chính thao tác xóa như xóa tiền lương. Tôi chỉ đề cập đến hai trường nên các thao tác trên bản ghi mà tôi có thể thực hiện bị hạn chế, nhưng bạn có thể tạo nhiều trường hơn trong cùng một bảng 'nhân viên' hoặc bất kỳ bảng nào khác mà bạn tạo

Điều này đưa chúng ta đến phần cuối của bài viết về “Kết nối cơ sở dữ liệu Python”. Tôi hy vọng bạn đã rõ tất cả các khái niệm liên quan đến cơ sở dữ liệu, MYSQL db, thao tác cơ sở dữ liệu trong python. Hãy chắc chắn rằng bạn thực hành càng nhiều càng tốt và hoàn nguyên kinh nghiệm của bạn

Có một câu hỏi cho chúng tôi? . Để có kiến ​​thức chuyên sâu về Python cùng với các ứng dụng khác nhau của nó, bạn có thể đăng ký ngay bây giờ với khóa đào tạo Python trực tiếp của chúng tôi với sự hỗ trợ 24/7 và quyền truy cập trọn đời

Cơ sở dữ liệu nào hoạt động tốt nhất với Python?

5 Cơ sở dữ liệu trong bộ nhớ hàng đầu hoạt động hiệu quả với Python .
làm lại. Redis là bộ đệm phân tán và cơ sở dữ liệu trong bộ nhớ. .
SQLite. SQLite là một mô-đun C hỗ trợ cơ sở dữ liệu dựa trên đĩa không cần chương trình máy chủ chuyên dụng và có thể được truy cập bằng ngôn ngữ truy vấn SQL không chuẩn. .
ghi nhớ. .
khí cầu. .
Hazelcast

Python có thể tương tác với MySQL không?

Máy chủ MySQL sẽ cung cấp tất cả các dịch vụ cần thiết để xử lý cơ sở dữ liệu của bạn. Sau khi máy chủ được thiết lập và chạy, bạn có thể kết nối ứng dụng Python của mình với nó bằng Trình kết nối MySQL/Python .

Python có thể tích hợp với SQL không?

Bước đầu tiên để thiết lập Tích hợp máy chủ Python SQL yêu cầu bạn tạo kết nối giữa Python và máy chủ SQL bằng pyodbc. chức năng kết nối và chuyển một chuỗi kết nối. Chuỗi Python MsSQL Connection sẽ xác định Trình điều khiển DBMS, cài đặt kết nối, Máy chủ và Cơ sở dữ liệu cụ thể