python-sqlalchemy

from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column,Integer,String
from sqlalchemy.orm import sessionmaker
from sqlalchemy import func
engine=create_engine(
    "mysql+pymysql://root:123456@localhost/mxm_db",
    encoding='utf-8',echo=False
)
Base=declarative_base()#生成orm基類
class User(Base):
    __tablename__='user'
    id=Column(Integer,primary_key=True)
    name=Column(String(32))
    password=Column(String(64))

    def __repr__(self):
        return '<%s,%s,%s>' %(self.id,self.name,self.password)
Base.metadata.create_all(engine)
Session_class=sessionmaker(bind=engine)#創建與數據庫的會話class
Session=Session_class()#生成session實例,跟cursor一樣
#1.增加數據
# user_obj=User(name='mxm1',password='mxm1')#生成你要創建的數據對象
# print(user_obj.name,user_obj.password)
# Session.add(user_obj)#把要創建的數據對象,添加到這個session裏
# Session.commit()#統一提交,創建數據
#2.查詢數據
data=Session.query(User).filter_by(name='mxm1').first()#查詢不需要commit
print(data)
#3.修改數據
#data.name='mxm2'
#data.password='mxm2'
#Session.commit()
#4.數據回滾
#Session.rollback()
#filter(User.name.in_(['name1','name2']))
#5.統計
#data=Session.query(User).filter_by(password='mxm').\
#    filter_by(name='mxm').count()#查詢不需要commit
#print(data)
#6.分組
#data=Session.query(User.name,func.count(User.name)).group_by(User.name).all()
#print(data)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章