博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sqlalchemy 简单使用
阅读量:6638 次
发布时间:2019-06-25

本文共 1369 字,大约阅读时间需要 4 分钟。

一, sqlalchemy 与数据库连接

安装:    

    pip install sqlalchemy

sqlalchemy 查看版本:    

    import sqlalchemy

    sqlalchemy.__version__

sqlalchemy 连接数据库:

    from sqlalchemy import create_engine

    HOST='127.0.0.1'

    PORT='3306'

    DATABASE='test'

    USERNAME='test'

    PASSWORD='pass'

    DB_URL =  'mysql+pymysql://{}:{}@{}:{}/{}?charset=utf8'.format(

                    USERNAME, PASSWORD, HOST, PORT, DATABASE

    )

    engin = create_engine(DB_URL, echo=False)

sqlalchemy创建表的简单过程:

    1. 创建一个基类

     from sqlalchemy.ext.declarative import declarative_base

     Base = declarative_base()

    2. 创建一个类

    from sqlalchemy import Column, Integer, String

    class User(Base):

          __tablemame__ = 'users'       # 数据表的名子

          id = Column(Integer, Sequence('user_id_seq'),  Primary_key=True)  # 设置为主键

          name = Column(String(20), nullable=False)  #非空

          password = Column(String(255), nullable=False)

创建表:

    Base.metadata.create_all(engine)

创建一个对象

    zs_user = User(name='zs', fullname='ZhangSan', password='password')

    zs.name

        zs

创建 Session

    from sqlalchemy.orm import sessionmaker

    Session = sessionmaker(bind=engine)

添加更新对象

将 zs_user 对象添加到会话中

    session.add(zs_user)

通过条件查询

    zs = session.query(User).filter_by(name='zs').first()

可以使用 add_all() 函数一次性添加多个User 对象、

    session.add_all(

        User(name='ls', fullname='lisi', password='pass'),

        User(name='ww', fullname='wangwu', password='pass'),

    )

查看等待提交的状态:

session.new

将更改提交到数据库:

session.commit()

本文转自   tianshuai369   51CTO博客,原文链接:http://blog.51cto.com/songqinglong/1939828

转载地址:http://uupvo.baihongyu.com/

你可能感兴趣的文章
Unix环境高级编程(五)进程环境
查看>>
【转】C 编译器优化过程中的 Bug
查看>>
AJAX
查看>>
SQL Server安装
查看>>
vue cli3.0快速搭建项目详解(强烈推荐)
查看>>
Linux常见命令总结
查看>>
【Windows编程】系列第二篇:Windows SDK创建基本控件
查看>>
Python瓦匠 —— 正则表达式(六)
查看>>
Linux主要shell命令详解(下)
查看>>
HTML通过button触发input-file控件上传文件的问题
查看>>
介绍我的家乡-信阳(日语)
查看>>
描述Spring Web MVC的工作流程
查看>>
柱、锥、台、球的体积公式推导(不用积分)
查看>>
jqgrid 中的事件
查看>>
Ubuntu docker Postgresql
查看>>
java使用Arrays.asList快速创建List集合
查看>>
【HDOJ】1260 Tickets
查看>>
sql逻辑查询 理论知识
查看>>
HDU3694 Fermat Point in Quadrangle(求四边形费马点)
查看>>
Swift 之惰性求值
查看>>