1、实现对接数据库 mysql
2、完成数据表创建
3、完成数据库记录插入
4、晚上数据库表更新
5、完成数据库记录删除
完整代码如下
import pymysql
pymysql.install_as_MySQLdb()
from sqlalchemy import create_engine, Column, Integer, String, update
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
# 数据库连接信息
engine = create_engine('mysql://root:Ikun0504@localhost:3306/blog', echo=True)
# engine = create_engine("mysql://username:password@hostname:port/dbname", echo=True)
# db = pymysql.connect(host="localhost", port=3306, user="root", password="Ikun0504", db="blog",
# charset="utf8")
# 创建 Session 对象
Session = sessionmaker(bind=engine)
session = Session()
# 创建一个基类,用于定义数据表模型
# Base = declarative_base()
from sqlalchemy.orm import declarative_base
Base = declarative_base()
# 定义数据表模型
class blog(Base):
__tablename__ = 'blog'
id = Column(Integer, primary_key=True)
name = Column(String(10))
old = Column(Integer)
# 创建数据表
Base.metadata.create_all(engine)
# 插入数据
session.add_all([
blog(name='babe', old=25),
blog(name='way', old=30),
blog(name='Charlie', old=20),
blog(name='jeff', old=28),
blog(name='jim',old=29)
])
# 提交更改
session.commit()
# 更新数据
session.query(blog).filter_by(name='jeff').update({blog.old: 18})
# 提交更改
session.commit()
# 删除数据
session.query(blog).filter_by(name='way').delete()
# 提交更改
session.commit()
# 查询数据
print(session.query(blog).all())
运行结果如下
Navicat呈现结果如下