当前位置: 首页 > news >正文

python学习教程(九)sqlalchemy框架的modern映射

首先写一个modern.py文件,


 

from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String
from sqlalchemy.engine import create_engine

'''the connection to the database'''
engine = create_engine("mysql://root:1933jld1945js@localhost/test",isolation_level="READ UNCOMMITTED") 
'''the construct of the database table'''
Base = declarative_base()

class People():
    id = Column(Integer, primary_key=True)
    name = Column(String(16))
    gender = Column(String(16))
    age = Column(String(16))

class User(Base,People):
    __tablename__ = 'users'

    fullname = Column(String(16))
    password = Column(String(16))

class AdvancedUser(Base,People):
    __tablename__ = 'advanceduser'
    
    fullname = Column(String(16))
    password = Column(String(16))
    email = Column(String(16))
    
class Teacher(Base,People):
    __tablename__ = 'teacher'
    
    phone = Column(String(16))
    
Base.metadata.create_all(engine)


然后写一个control.py文件,内容如下:

 

 

from sqlalchemy.orm.session import sessionmaker
from modern import engine,User,AdvancedUser,Teacher

user = User()
user.name = 'username'
user.gender = 'male'
au = AdvancedUser()
au.name = 'auname'
au.gender = 'female'
teacher = Teacher()
teacher.name = 'wangdi'
teacher.gender = 'female'
teacher.phone = '15264397652'
Session = sessionmaker()
Session.configure(bind=engine)
session = Session()
session.add(user)
session.add(au)
session.add(teacher)
session.flush()
session.commit()


运行control.py可以测试代码。

 

 

相关文章:

  • linux下用rinetd做端口转发
  • hibernate集合映射inverse和cascade详解
  • Mysql高可用集群
  • jQuery Mobile入门教程——主题的使用和定制
  • [Android]如何调试Native memory crash issue
  • 如何贴电脑膜没有气泡
  • li或dd 浮动后增加图片时高度多出3-5px的问题
  • 优化JVM参数提高eclipse运行速度
  • 最坑爹的硬盘:希捷ST2000DM001
  • android开发(28) 做个 指南针 应用
  • 转C++11标准后的C++阅读书目
  • 表使用的空间不完全释放问题
  • svn 使用笔记(一)
  • 调用窗体对象、窗体元素时引用name/id时各浏览器区别
  • S3C2440的LCD虚拟显示测试
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • Angularjs之国际化
  • extract-text-webpack-plugin用法
  • hadoop入门学习教程--DKHadoop完整安装步骤
  • HTML中设置input等文本框为不可操作
  • Javascript设计模式学习之Observer(观察者)模式
  • Kibana配置logstash,报表一体化
  • mockjs让前端开发独立于后端
  • mysql 5.6 原生Online DDL解析
  • Python爬虫--- 1.3 BS4库的解析器
  • webpack4 一点通
  • weex踩坑之旅第一弹 ~ 搭建具有入口文件的weex脚手架
  • 闭包--闭包作用之保存(一)
  • 如何进阶一名有竞争力的程序员?
  • 数据结构java版之冒泡排序及优化
  • 网络应用优化——时延与带宽
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 赢得Docker挑战最佳实践
  • 栈实现走出迷宫(C++)
  • 不要一棍子打翻所有黑盒模型,其实可以让它们发挥作用 ...
  • 好程序员大数据教程Hadoop全分布安装(非HA)
  • ​Linux Ubuntu环境下使用docker构建spark运行环境(超级详细)
  • (Note)C++中的继承方式
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (入门自用)--C++--抽象类--多态原理--虚表--1020
  • (十五)使用Nexus创建Maven私服
  • (四)c52学习之旅-流水LED灯
  • (转)从零实现3D图像引擎:(8)参数化直线与3D平面函数库
  • (转)树状数组
  • * CIL library *(* CIL module *) : error LNK2005: _DllMain@12 already defined in mfcs120u.lib(dllmodu
  • **PHP二维数组遍历时同时赋值
  • .class文件转换.java_从一个class文件深入理解Java字节码结构
  • .Net - 类的介绍
  • .NET6 开发一个检查某些状态持续多长时间的类
  • .NET导入Excel数据
  • /使用匿名内部类来复写Handler当中的handlerMessage()方法
  • @font-face 用字体画图标
  • @modelattribute注解用postman测试怎么传参_接口测试之问题挖掘
  • @RequestBody的使用
  • @RunWith注解作用