def create_db_structor(self): # 建立表结构: engine = conn.get_conn_engine() Base.metadata.create_all(engine) print('数据库表结构 新建完毕!')
def create_tables(self): # 重建数据库表 # db_session = self.DB_session() # db_session.create_tables Base.metadata.create_all(conn.get_conn_engine()) print('重建数据库表结构')
@File : user_dept.py @Time : 2020/02/09 14:03:54 @Author : Jeffrey Wang @Version : 1.0 @Contact : [email protected] @Desc : 用 员工、部门 为例子,实现ORM基本操作 ''' from sqlalchemy import Column, String, Integer from sqlalchemy.orm import sessionmaker from sqlalchemy.ext.declarative import declarative_base import wdbd.codepool.sqlalchemy.conn as conn from sqlalchemy.orm import aliased from sqlalchemy import text from sqlalchemy import func Session = sessionmaker(bind=conn.get_conn_engine()) # 创建对象的基类: Base = declarative_base() # 定义User对象: class Employee(Base): # 表的名字: __tablename__ = 'employee' # 表的结构: # id = Column('id', String(20), primary_key=True) name = Column('name', String(20), primary_key=True) age = Column('age', Integer())
def __init__(self): self.DB_session = sessionmaker(conn.get_conn_engine())
def create_tables(self): # 重建数据库表 Base.metadata.create_all(conn.get_conn_engine()) print('重建数据库表结构')
def create_tables(self): # 创建表结构 Base.metadata.create_all(conn.get_conn_engine())
@Contact : [email protected] @Desc : 连接阿里云Mysql数据库示范 ''' from sqlalchemy import create_engine import wdbd.codepool.sqlalchemy.conn as conn def get_conn(): """返回数据库连接引擎 """ # mysql+mysqlconnector://root:password@localhost:3306/test server_url = 'rm-bp13oao7f763scs44yo.mysql.rds.aliyuncs.com' server_port = 3306 user_id = 'dev' user_password = '******' db_name = 'fdata_dev' conn_str = 'mysql+mysqlconnector://{user_id}:{user_password}@{server_url}:{server_port}/{db_name}'.format( server_url=server_url, user_id=user_id, user_password=user_password, server_port=server_port, db_name=db_name) engine = create_engine(conn_str) return engine if __name__ == "__main__": con = get_conn() print('连接数据库 : {0}'.format(con)) print(conn.get_conn_engine())
@File : automap.py @Time : 2020/02/10 20:20:27 @Author : Jeffrey Wang @Version : 1.0 @Contact : [email protected] @Desc : 根据数据库现有表结构,反向形成Class Mapping ''' from sqlalchemy.ext.automap import automap_base from sqlalchemy.orm import Session from sqlalchemy import create_engine import wdbd.codepool.sqlalchemy.conn as conn from sqlalchemy.orm import relationship Base = automap_base() engine = conn.get_conn_engine() # reflect the tables Base.prepare(engine, reflect=True) # mapped classes are now created with names by default # matching that of the table name. Address = Base.classes.addresses User = Base.classes.users User.address_collection = relationship("address", collection_class=set) session = Session(engine) mark = User(name='mark') # for i in User.__dict__.items(): # print(i)