zoukankan      html  css  js  c++  java
  • ORM初识

    简介:

    ORM:object relational Mapping,通过面向对象来描述数据(数据库结构/结构),将描述内容自动持久化到关系数据库中,本质就是数据从一中方式转化为另一种方式,ORM意为着数据库消耗变大。

    flask 采用flask封装的flask_sqlschemy

    链接数据库:(mysql,sqlite):

    连接mysql

    其中的mysql有两个版本:python3:Mysql:app.config["SQLALCHEMY_DATABASE_URI"]='mysql+pymysql://root:密码@localhost/库名'

    python2 将pymysql 换为 mysqldb。

    注意事项:+两边没有空格,保证环境中有pymysql 与  flak-sqlachemy两个包,并且事从 flak-sqlachemy导入SQLALchemy方法。

    连接sqlite:

    import os
     path =os.path.dirname(os.path.abspath(_file_))
     db_path = os.path.join(path,"db.sqlite")

    app.config["SQLALCHEMY_DATABASE_URI"]='sqlite:///'+db_path(sqlite的文件路径)

    注意事项:
    事先更新pycharm内置的sqlite,保证可用

    配置数据实时更新:

    app.config["SQLALCHEMY_TRACK_MODIFICAITIONS"] = True

    绑定实例化服务器对象:

    db = SQLALchemy(app)

    描述数据库表结构:

    通过实例化:

    class 表名():
      健明 = db.Column(写数据类型,数据约束)

    创建表

    db.create_all()

    数据类型

    参数 描述
    primary_key 主键
    autoincrement 自增
    unique 唯一
    index 索引
    nullable  可以为null
    default 默认值
  • 相关阅读:
    阶乘递归实现
    队列
    1+2+3+...+100用递归实现
    快速排序C语言实现
    js的onfocus,onblur事件
    CSP2021 游记 菜到离谱
    700题复习计划
    [传递闭包] P2881 [USACO07MAR]排名的牛Ranking the Cows
    【笔记】序列分块
    【题解】UVA10930 A-Sequence
  • 原文地址:https://www.cnblogs.com/liuyuchao/p/13849850.html
Copyright © 2011-2022 走看看