1. 程式人生 > >連線mysql(建表和刪表)

連線mysql(建表和刪表)

from   sqlalchemy.ext.declarative  import  declarative_base##拿到父類
from sqlalchemy import Column##拿到欄位
from sqlalchemy import create_engine ##建立引擎
from sqlalchemy import text,String,ForeignKey,Integer
from sqlalchemy.orm import relationship


##拿到表的父類物件
base=declarative_base()

######建立表
class depart(base):

__tablename__='depart'

id=Column(Integer,primary_key=True)
title=Column(Integer,primary_key=True)



class user(base):
__tablename__='user'

id=Column(Integer,primary_key=True)
name=Column(String,unique=True,nullable=False)
depart_id=Column(Integer,ForeignKey('depart.id'))

dp=relationship('Depart',backref='pers')##關聯那個表,不會在資料庫建立


###進行操作

def create_all():
engine=create_engine(
'mysql+pymysql://root:192855wang,,[email protected]:3306/orm4?charset=utf8',
max_overflow=0,##超過連線池最多建立的連線
pool_size=5,##連線池大小
pool_timeout=30,###池中沒有執行緒最多等待的時間,否則報錯
pool_recycle=-1,##多久之後對執行緒傳進行操作

)


def drop_all():

engine = create_engine(
'mysql+pymysql://root:192855wang,,[email protected]:3306/orm4?charset=utf8',
max_overflow=0, ##超過連線池最多建立的連線
pool_size=5, ##連線池大小
pool_timeout=30, ###池中沒有執行緒最多等待的時間,否則報錯
pool_recycle=-1, ##多久之後對執行緒傳進行操作

)

if __name__ == '__main__':
create_all()