pymysql和SQLALChemy基础使用(python3)

版权声明:多多交流。 https://blog.csdn.net/qq_42776455/article/details/82959857

pymysql连接mysql数据库

PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。

核心:sql语句

pymysql连接数据库是其核心还是sql语句,只不过前提是用PyMysql的库连接数据库。

简单操作:

参考菜鸟教程:http://www.runoob.com/python3/python3-mysql.html
导入pymysql库

# 导入pymysql库
import pymysql

# 连接数据库
db = pymysql.connect('mysql_add','username','password','DB_name')

# 创建游标
cursor = db.cursor()

# sql语句
sql = """sql"""

# 执行sql语句
cursor.execute(sql)

# 执行完毕断开连接
db.close()

SQLALChemy操作mysql数据库

SQLALChemy操作数据库用的是ORM对象关系映射模型(Object-Relational Mapping),把关系数据库的表结构映射到对象上。操作数据库通过控制映射的对象即可,不需要去直接写sql语句。

简单操作:

from sqlalchemy import create_engine,Column,Integer,String
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker

# 连接数据库
connect = create_engine("mysql+pymysql://root:root@localhost:3306/sqlachemytest",
                        encoding="utf-8",
                        echo=True)
Base = declarative_base()

# 构造表的结构
class User(Base):
    __tablename__ = "users_table"
    id = Column(Integer,primary_key=True,nullable=False)
    name = Column(String(32))
    password = Column(String(32))
    
# 如果User表不存在的话,就创建改表
Base.metadata.create_all(connect)

DBsession = sessionmaker(bind=connect)
session = DBsession()

# 为表添加用户
new_user = User(name='HANG',password='123456')

#事务操作
session.add(new_user)
session.commit()
session.close()

比较详细的友博:https://blog.csdn.net/u011521019/article/details/50793996

flask-sqlalchemy

SQLAlchemy是一个独立的模块,不过被很多框架都囊括其中。比如有flask-SQLAlchemy这样的flask扩展。我以前接触过这个,比原生的要简化一些,但仅仅是为了体验ORM没必要去搭一个flask环境,以后在你用flask写网站的时候,如果数据库是mysql,那你就极大可能的用到这个。
当然在你学会原生的SQLALChemy,这个也就很简单 了。

猜你喜欢

转载自blog.csdn.net/qq_42776455/article/details/82959857
今日推荐