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()