SQLAlchemy的使用---增删改查
#通过SQLAlchemy对数据库进行增删改查
# 想要操作数据库 先要打开数据库连接
from create_table import engine
# 创建会话 - 打开数据库连接
from sqlalchemy.orm import sessionmaker
# 创建会话窗口
Session = sessionmaker(engine)
# 打开会话窗口
db_session = Session()
from create_table import User
user_obj = User(name='XJ') # 通过db_session(已经打开的会话窗口)
db_session.add(user_obj)
# 提交执行操作
db_session.commit()
# 关闭会话
db_session.close() # 增加批量数据
from create_table import User
db_session.add_all([
User(name='XJ1'),
User(name='XJ2'),
User(name='XJ3')
])
db_session.commit()
db_session.close()
添加数据
# 更新修改数据 from sqlalchemy.orm import sessionmaker
from create_table import engine,User Session = sessionmaker(engine)
db_session = Session() # 1.修改数据
# SQL语句
# update User set 'name' = '徐建' where id = 2 user = db_session.query(User).filter(User.id==2).update({'name':'徐建'})
db_session.commit()
db_session.close()
修改数据
# 删除数据
from sqlalchemy.orm import sessionmaker
from create_table import engine, User Session = sessionmaker(engine)
db_session = Session() # 1.删除 # SQL语句
# delete from user where id =2 user = db_session.query(User).filter(User.id==2).delete()
print(user) db_session.commit()
db_session.close() # 2.删除多条
res = db_session.query(User).filter(User.name=='XJ2').delete()
db_session.commit()
db_session.close()
print(res)
删除数据
# 查询
# 会话窗口
from sqlalchemy.orm import sessionmaker
from create_table import engine Session = sessionmaker(engine) db_session = Session()
from create_table import User
# 查询所有 # SQL语句
# select * from table user_list = db_session.query(User).all()
for row in user_list:
print(row.id, row.name) # 查询一个
user = db_session.query(User).first()
print(user.name) # 带条件的查询
user_list = db_session.query(User).filter(User.id==2).all()
print(user_list[0].name) user = db_session.query(User).filter_by(id=4).first()
print(user.id, user.name) user_list = db_session.query(User).filter(User.id>=2).all()
for row in user_list:
print(row.id, row.name) db_session.close()
查询数据
SQLAlchemy的使用---增删改查的更多相关文章
- sqlalchemy基本的增删改查
#encoding: utf-8 from sqlalchemy import create_engine,Column,Integer,String from sqlalchemy.ext.decl ...
- sqlalchemy 单表增删改查
1.连接数据库,并创建session from sqlalchemy.orm import sessionmaker from sqlalchemy import create_engine engi ...
- SQLAlchemy表操作和增删改查
一.SQLAlchemy介绍 SQLAlchemy是一个基于Python实现的ORM框架.该框架建立在 DB API之上,使用关系对象映射进行数据库操作,简言之便是:将类和对象转换成SQL,然后使用数 ...
- SQLAlchemy 增删改查 一对多 多对多
1.创建数据表 # ORM中的数据表是什么呢? # Object Relation Mapping # Object - Table 通过 Object 去操纵数据表 # 从而引出了我们的第一步创建数 ...
- SQLAlchemyの增删改查
用a*my写原味sql from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import Column, I ...
- 13,SQLAlchemy 增删改查 一对多 多对多
今天来聊一聊 Python 的 ORM 框架 SQLAlchemy Models 是配置和使用比较简单,因为他是Django自带的ORM框架,也正是因为是Django原生的,所以兼容性远远不如SQLA ...
- SQLAlchemy 增删改查 一对一 多对多
首先要导入SQLAIchemy模块 from sqlalchemy.ect.declaative import declarative_base 创建orm基类 Base = declarative_ ...
- SQLAlchemy的增删改查 一对多 多对多
Models只是配置和使用比较简单,因为是Django自带的ORM框架,所以兼容性不行,所以出现了SQLAlchemy,SQLAlchemy是比较全面的ORM框架,它可以在任何使用SQL查询时使用 以 ...
- SQLAlchemy02 /SQLAlchemy对数据的增删改查操作、属性常用数据类型详解
SQLAlchemy02 /SQLAlchemy对数据的增删改查操作.属性常用数据类型详解 目录 SQLAlchemy02 /SQLAlchemy对数据的增删改查操作.属性常用数据类型详解 1.用se ...
随机推荐
- 【重要的css属性学习】看了乙醇的文章,统计了几个高star前端框架下,Css属性出现最多的,这里学习记录一下
color background-color display margin-left border-color padding max-width margin-bottom width flex 待 ...
- Qt 学习之路 2(68):访问网络(4)
Home / Qt 学习之路 2 / Qt 学习之路 2(68):访问网络(4) Qt 学习之路 2(68):访问网络(4) 豆子 2013年11月7日 Qt 学习之路 2 19条评论 前面几章我们了 ...
- 【算法笔记】B1036 跟奥巴马一起编程
1036 跟奥巴马一起编程 (15 分) 美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统.2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴 ...
- P4381 [IOI2008]Island
传送门 显然题目给的图构成一个基环树森林 对于每个基环树单独考虑,显然每个都走直径是最优的 考虑如何求出基环树的直径 把直径分为两种情况考虑,首先可以找出环 因为直径可能不在环边上,所以对每个环上节点 ...
- HDU 6321 (状压dp)
题目大意:: 为给你n个点(n<=10,nn<=10,n) 初始时没有边相连 然后有m个操作(m<=30000m<=30000) 每次可以添加一条边或删除一条边 允许有重边 要 ...
- ElementUI 时间控件
<template> <div class="block"> <span class="demonstration">默认& ...
- C# 关于utf-8的研究
前提 如果一不小心把字符转成utf8的格式,但是却产生了乱码.这个时候要么就是寻找其他的转码方式,要么就不想要了,直接过滤吧. 这里说的是直接过滤的办法. 参考链接 https://netvignet ...
- ECharts 雷达图怎么在类目值下面显示数值
需要实现的效果: 官网里面的demo显示数值,都是在拐点处: [解决] 1.只显示类目 <div id="mychart" style="width:300px;h ...
- [转] 你并不需要Underscore/Lodash
[From] https://segmentfault.com/a/1190000004460234 Lodash 和 Underscore 是非常优秀的当代JavaScript的工具集合框架,它们被 ...
- springboot+Zookeeper+Dubbo入门
最近想学习dubbo,就利用周末写了一个特别简单的demo,不知道有没有用,先记录一下. 1.安装zookeeper并启动(安装看我上一篇博客https://www.cnblogs.com/huang ...