在Python中进行数据库操作,通常需要使用数据库适配器或ORM(对象关系映射)库。以下是一些常用的方法和步骤:
mysql-connector-python或PyMySQL。psycopg2。sqlite3模块。例如,安装MySQL适配器:
pip install mysql-connector-python
import mysql.connector
# 连接数据库
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="yourdatabase"
)
cursor = mydb.cursor()
# 插入数据
sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
val = ("John", "Highway 21")
cursor.execute(sql, val)
# 提交更改
mydb.commit()
# 查询数据
sql = "SELECT * FROM customers"
cursor.execute(sql)
myresult = cursor.fetchall()
for x in myresult:
print(x)
cursor.close()
mydb.close()
ORM允许你使用Python类和对象来表示数据库表和记录,而不是直接编写SQL语句。
pip install sqlalchemy。from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
Base = declarative_base()
class Customer(Base):
__tablename__ = 'customers'
id = Column(Integer, primary_key=True)
name = Column(String)
address = Column(String)
# 创建数据库引擎
engine = create_engine('sqlite:///example.db')
# 创建所有表
Base.metadata.create_all(engine)
# 创建会话
Session = sessionmaker(bind=engine)
session = Session()
new_customer = Customer(name='John', address='Highway 21')
session.add(new_customer)
session.commit()
customers = session.query(Customer).all()
for customer in customers:
print(customer.name, customer.address)
session.close()
try...except块捕获并处理可能的错误。通过以上方法,你可以在Python中方便地进行数据库操作。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。