• sqlalchemy python中的mysql数据库神器


    在介绍sqlalchemy之前,我们先了解一下ORM。

    ORM 全称 Object Relational Mapping, 翻译过来叫对象关系映射。也就是说ORM 将数据库中的表与面向对象语言中的类建立了一种对应关系

    而SQLAlchemy 是Python 社区最知名的 ORM 工具之一,为高效和高性能的数据库访问设计,实现了完整的企业级持久模型。

    在ubuntu上安装 不同系统只是命令头不一样   安装 SQLAlchemy:

    $ sudo pip install sqlalchemy


    1 连接数据库

    我们Code 下新建个 Python 文件name.py(name只是一个名字,随便你自己取   不过要符合命名规则)

    # coding: utf-8   #使用utf-8
    
    from sqlalchemy import create_engine    #导入sqlalchemy中的create_engine包   用来连接数据库   也可以导入psycopg2包
    engine = create_engine('mysql+mysqldb://<username>:<password>@<dsnname>')
    username是数据库的用户名 password是数据库管理员密码 dsnname是ip+端口+路径


    2  数据库的列

    每个人都知道   数据库确实就是一列一列的数据   那数据库中的列有那么多的参数   我们在python中如何去确定呢?

    是可能是一般人都会有的问题   我一开始也想过   查过  问过

    而答案是python的sqlalchemy中Colume的用法

        id = Column(Integer, primary_key=True)
        username = Column(String(64), nullable=False, index=True)
        password = Column(String(64), nullable=False)
        email = Column(String(64), nullable=False, index=True)
    type = Colume(Bool,nullable=True)


    这里的话就简单介绍一下基本的参数填写了
    有什么问题的 有什么错误的 希望各位可以指出 帮助我进步 谢谢

    SQLAlchemy常用数据类型:
    1. Integer:整形,映射到数据库中是int类型。
    2. Float:浮点类型,映射到数据库中是float类型。他占据的32位。
    3. Double:双精度浮点类型,映射到数据库中是double类型,占据64位。
    4. String:可变字符类型,映射到数据库中是varchar类型.
    5. Boolean:布尔类型,映射到数据库中的是tinyint类型。
    6. DECIMAL:定点类型。是专门为了解决浮点类型精度丢失的问题的。在存储钱相关的字段的时候建议大家都使用这个数据类型。并且这个类型使用的时候需要传递两个参数,第一个参数是用来标记这个字段总能能存储多少个数字,第二个参数表示小数点后有多少位。
    7. Enum:枚举类型。指定某个字段只能是枚举中指定的几个值,不能为其他值。在ORM模型中,使用Enum来作为枚举

    8. Date:存储时间,只能存储年月日。映射到数据库中是date类型。在Python代码中,可以使用`datetime.date`来指定

    9. DateTime:存储时间,可以存储年月日时分秒毫秒等。映射到数据库中也是datetime类型。在Python代码中,可以使用`datetime.datetime`来指定。示例代码如下:

    10. Time:存储时间,可以存储时分秒。映射到数据库中也是time类型。在Python代码中,可以使用`datetime.time`来至此那个。

    11. Text:存储长字符串。一般可以存储6W多个字符。如果超出了这个范围,可以使用LONGTEXT类型。映射到数据库中就是text类型。
    12. LONGTEXT:长文本类型,映射到数据库中是longtext类型。


    最后 大家可以看看https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014320114981139589ac5f02944601ae22834e9c521415000
    这个网站哦 我自己也是在这把python的教程过了几遍
    如果有人是搞openstack的 希望可以给我一个求教的机会哦
     
     
  • 相关阅读:
    广播接收者 BroadcastReceiver 示例-1
    内容提供者 DocumentProvider Uri工具类
    内容提供者 ContentResolver 数据库 示例 -1
    内容提供者 ContentResolver 数据库 示例 -2
    Intent MIME 打开各种类型的文件
    任务栈 启动模式 Task Flag launchMode MD
    自定义控件 横向滑动控件 总结
    Universal-Image-Loader 示例 工具
    颜色矩阵 滤镜 ColorMatrix
    图形绘制 Canvas Paint Path 详解
  • 原文地址:https://www.cnblogs.com/52why/p/8698556.html
Copyright © 2020-2023  润新知