Ejemplo n.º 1
0
 def create_db_structor(self):
     # 建立表结构:
     engine = conn.get_conn_engine()
     Base.metadata.create_all(engine)
     print('数据库表结构 新建完毕!')
Ejemplo n.º 2
0
 def create_tables(self):
     # 重建数据库表
     # db_session = self.DB_session()
     # db_session.create_tables
     Base.metadata.create_all(conn.get_conn_engine())
     print('重建数据库表结构')
Ejemplo n.º 3
0
@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())
Ejemplo n.º 4
0
 def __init__(self):
     self.DB_session = sessionmaker(conn.get_conn_engine())
Ejemplo n.º 5
0
 def create_tables(self):
     # 重建数据库表
     Base.metadata.create_all(conn.get_conn_engine())
     print('重建数据库表结构')
Ejemplo n.º 6
0
 def create_tables(self):
     # 创建表结构
     Base.metadata.create_all(conn.get_conn_engine())
Ejemplo n.º 7
0
@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())
Ejemplo n.º 8
0
@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)