• SQLAlchemy Table(表)类方式


    Table 构造方法

     1 Table(name, metadata[, *column_list][, **kwargs]) 

    参数说明: 
    • name 表名
    • metadata 元数据对象
    • column_list 是列(Column或其他继承自SchemaItem的对象)列表
    • kwargs主要内容:
      • schema: (None)表的模式(一般默认是数据库名, 无需特别指定; Oracle中是owner, 当一个数据库由多个用户管理时,用户的默认数据库不是要连接的数据库时,需要指定此项)
      • autoload: (False)是否自动加载
      • autoload_replace: (True)是否自动用元数据中加载的列替换column_list中已经存在了的同名列
        • True时自动将column_list中已经存在了的列替换为从元数据中加载的同名列
        • False时会忽略元数据有,且column_list中已经存在了的列
      • autoload_with: 自动加载的引擎(Engine)或连接(Connection)对象
        • None
          • autoloadTrue时, 会从传递的metadata中寻找引擎或连接对象
        • 不为None
          • autoload不为True时, autoload会自动被修改为True
      • comment: 注释
      • extend_existing: (False)当表已经存在于元数据中时,如果元数据中存在与column_list中的列同名的列,column_list中同名的列会替换掉元数据中已经有的列
      • keep_existing: (False)当表已经存在于元数据中时,如果元数据中存在与column_list中的列同名的列,column_list中同名的列会被忽略
      • include_columns:(None)从元数据中只需加载的表的列名列表
      • mustexist: (False)表名是否一定需要存在于元数据中(不存在时引发异常)
    常用SchemaItem子类:
    • PrimaryKeyConstraint
    • ForeignKeyConstraint
    注意,在使用不同版本的SQLAlchemy时,以上参数中:
    • 老版本中可能部分参数还没有
    • 新版本中可能废弃了部分参数
    • keep_existingextend_existing互相排斥,不能同时传递为True
    • keep_existingextend_existing适用于新建表对象;如果要创建新的表,表明已经存在于meta.tables中时,需要指明任意一个参数,不然会报错。
    • useexisting已被废弃, 新版本使用extend_existing

    Column的构造方法

    Column([name, ]type_[, **kwargs])
    参数说明:
    • name 字段名
    • type_ 字段数据类型,这里的数据类型包括:
      • SQLAlchemy中常用数据类型:
        • 整数: SmallIntegerIntegerBigInteger
        • 浮点数: FloatNumeric
        • 文本字符串: StringTextUnicodeUnicodeTextCHARVARCHAR
        • 二进制字符串: LargeBinaryBINARYVARBINARY
        • 日期时间: DateDateTimeTIMESTAMP
      • Constraint: 约束
      • ForeignKey: 外键
      • ColumnDefault: 列默认值
    • kwargs主要内容
      • autoincrement: (False)是否是主键
      • default: (None)默认值
      • index: (None)索引
      • nullable: (True)是否可以为空(NULL)
      • primary_key: (False)是否是主键
      • server_default: (None)服务端(数据库中的函数)默认值
      • unique: (False)是否唯一
      • comment: (None)列注释
  • 相关阅读:
    let,const及解构赋值
    开发规范
    深入理解javascript之this
    深入理解javascript之作用域
    深入理解javascript之数据存储
    深入理解javascript之定时器
    Android 多选列表对话框 setMultiChoiceItems
    Android 单选列表对话框 setSingleChoiceItems
    Android 列表对话框 setItems
    Android 警告对话框 AlertDialog
  • 原文地址:https://www.cnblogs.com/srd945/p/9851227.html
Copyright © 2020-2023  润新知