pymysql和SQLALChemy基礎使用(python3)
阿新 • • 發佈:2018-12-07
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:[email protected]: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,這個也就很簡單 了。