- SQLAlchemy 教程
- SQLAlchemy - 主页
- SQLAlchemy - 简介
- SQLAlchemy 核心
- 表达语言
- 连接到数据库
- 创建表
- SQL 表达式
- 执行表达式
- 选择行
- 使用文本 SQL
- 使用别名
- 使用 UPDATE 表达式
- 使用 DELETE 表达式
- 使用多个表
- 使用多个表更新
- 按参数顺序更新
- 多表删除
- 使用连接
- 使用连词
- 使用函数
- 使用集合运算
- SQLAlchemy ORM
- 声明映射
- 创建会话
- 添加对象
- 使用查询
- 更新对象
- 应用过滤器
- 过滤器运算符
- 返回列表和标量
- 文本SQL
- 建立关系
- 使用相关对象
- 使用连接
- 常见关系运算符
- 急切加载
- 删除相关对象
- 多对多关系
- 方言
- SQLAlchemy 有用资源
- SQLAlchemy - 快速指南
- SQLAlchemy - 有用的资源
- SQLAlchemy - 讨论
SQLAlchemy 核心 - SQL 表达式
在本章中,我们将简要关注 SQL 表达式及其功能。
SQL表达式是使用相对于目标表对象的相应方法构造的。例如,INSERT 语句是通过执行 insert() 方法创建的,如下所示 -
ins = students.insert()
上述方法的结果是一个插入对象,可以使用str()函数验证。下面的代码插入学生 ID、姓名、姓氏等详细信息。
'INSERT INTO students (id, name, lastname) VALUES (:id, :name, :lastname)'
可以通过values()方法在特定字段中插入值来插入对象。下面给出了相同的代码 -
>>> ins = users.insert().values(name = 'Karan') >>> str(ins) 'INSERT INTO users (name) VALUES (:name)'
Python 控制台上回显的 SQL 不显示实际值(在本例中为“Karan”)。相反,SQLALchemy 生成一个绑定参数,该参数在语句的编译形式中可见。
ins.compile().params {'name': 'Karan'}
类似地,update()、delete()和select() 等方法分别创建 UPDATE、DELETE 和 SELECT 表达式。我们将在后面的章节中了解它们。