sqlalchemy

sqlalchemy

1.pip install sqlalchemy

2.pip install pymsql

connect.py

'''
sqlalchemy
'''

from sqlalchemy import create_engine

HOSTNAME='127.0.0.1'
PORT='33061'
DATABASE='mydb'
USERNAME='root'
PASSWORD='123456'

engine=create_engine('mysql+pymysql://root:123456@localhost:3306/mydb?charset=utf8')

db_url='mysql+pymysql://{}:{}@{}/{}?charset=utf8'.format(
USERNAME,
PASSWORD,
HOSTNAME,
DATABASE
)
engine=create_engine(db_url)

创建映像

from sqlalchemy.ext.declarative import declarative_base
Base=declarative_base(engine)

创建会话

from sqlalchemy.orm import sessionmaker
Session=sessionmaker(engine)
session=Session()

if name=='main':
#dir 显示对象的所有属性和方法
print(dir(engine))
print('--Base:',dir(Base))
print('--session:',dir(session))

#user_modules.py
from datetime import datetime
from sqlalchemy import Column,Integer,String,Boolean,DateTime
from connect import Base,session

class User(Base):
    __tablename__='user'
    id=Column(Integer,primary_key=True,autoincrement=True)
    username=Column(String(20),nullable=False)
    passwd=Column(String(50),nullable=False)
    createtime=Column(DateTime,default=datetime.now)
    _locked=Column(Boolean,default=False,nullable=False)

    def __repr__(self):
        return '<User(id=%s,username=%s,passwd=%s,createtime=%s,_locked=%s)>'%(
          self.id,
          self.username,
          self.passwd,
          self.createtime,
          self._locked
        )
if __name__=='__main__':
    Base.metadata.create_all()

posted @ 2017-10-29 21:57  nanaindi  阅读(206)  评论(0)    收藏  举报