Home >Backend Development >Python Tutorial >How Can I Connect to a MySQL Database Using Python?

How Can I Connect to a MySQL Database Using Python?

DDD
DDDOriginal
2024-12-27 21:01:12325browse

How Can I Connect to a MySQL Database Using Python?

Connecting to a MySQL Database with Python

Connecting to a MySQL database using Python involves three main steps:

1. Installation:

Install a MySQL driver for Python. The recommended package for Python 2 is MySQLdb. Install it using pip, your operating system's package manager, or the appropriate EXE file for Windows.

2. Usage:

Import the MySQLdb package and establish a connection to the database using the MySQLdb.connect() function. Specify the host, username, password, and database name as parameters.

import MySQLdb

db = MySQLdb.connect(host="localhost",  # Your host, typically localhost
                     user="username",  # Your username
                     passwd="password",  # Your password
                     db="database_name")  # Name of the database

Create a cursor object to execute SQL queries and retrieve results.

3. Advanced Usage:

Consider using an ORM (Object-Relational Mapping) tool to simplify database operations. SQLAlchemy and peewee are popular ORMs for Python.

With SQLAlchemy, define your database schema and map it to Python classes:

from sqlalchemy import *

engine = create_engine('mysql://username:password@host/database')  # Database credentials
metadata = MetaData()
users = Table('users', metadata, Column('id', Integer, primary_key=True),
                Column('name', String(255)), Column('email', String(255)))
metadata.create_all(engine)

With peewee, define your database models as Python classes:

from peewee import *

db = MySQLDatabase('database_name', user='username', password='password')

class User(Model):
    name = CharField()
    email = CharField()

    class Meta:
        database = db

The above is the detailed content of How Can I Connect to a MySQL Database Using Python?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn