python - 如何使用 Python Flask 和 PyOdbc 使用内部查询作为选择语句将值插入表中?从 HTML 表单获取的内部查询的输入
问题描述
环境细节。Windows 10 - Python3.5 - 烧瓶 - SQL SERVER - PyOdbc。
cur.execute("insert into T1 (ID_CUSTOMER, ID_ENVIRONMENT) values (?, ?)",
select id from CUSTOMER where name = form['customerId'],
select id from ENVIRONMENT where name = form['environmentId'],
)
解决方案
去掉values
,就可以直接使用了INSERT SELECT
。
INSERT INTO T1
(ID_CUSTOMER,
ID_ENVIRONMENT)
SELECT ID_CUSTOMER =(SELECT Max(id)
FROM customer
WHERE NAME = 'abc'),
ID_ENVIRONMENT = (SELECT Max(id)
FROM environment
WHERE NAME = 'xyz')
这Max(id)
是为了确保内部查询返回单个值
推荐阅读
- php - 将碳周期拆分为整月,并以天为单位提醒开始和结束
- wpf - WPF 等效于 HTML 基本标记,但用于具有相对路径的 Source
- javascript - JavaScript 变量查找解决方案
- javascript - 为什么我的后端不更新数据库中的keywordData列
- wpf - Avalon Dock:如何设置 LayoutAnchorablePaneControl 的 BorderBrush
- sorting - V-for 按字母顺序
- java - 在没有 StaleElementReferenceException 的情况下,使用 Selenium 和 Java 在网站上查找所有损坏的链接的最佳方法是什么?
- apache - WSL2 中的 Apache 不像 localhost 那样工作
- c# - RestSharp 保存结果失败
- websocket - Channel.writeAndFlush 中的 Netty WebSocket 客户端延迟