gpt4 book ai didi

coldfusion - 如何在coldfusion中使用CFQuery执行2个或多个插入语句?

转载 作者:行者123 更新时间:2023-12-03 01:59:15 25 4
gpt4 key购买 nike

是否可以使用cfquery执行2条插入或更新语句?

如果是的话怎么办?

如果不是,在 Coldfusion 中执行多个查询的最佳方法是什么,即仅打开一个到数据库的连接。

我认为每次我们调用cfquery时,我们都会打开新的连接数据库

最佳答案

Is it possible to Execute 2 insert or Update Statements using cfquery?

很可能是的。但是否可以运行多个语句取决于您的数据库类型和驱动程序/连接设置。例如,当您创建 MS SQL 数据源时,默认情况下允许 IIRC 多个语句。而 MySQL 驱动程序通常默认情况下禁用多个语句。那是为了帮助避免sql注入(inject)。因此,在这种情况下,您必须在连接设置中显式启用多个语句。否则,您不能使用多个语句。还有一些数据库(通常是桌面数据库,如 MS Access)根本不支持多语句。所以我认为这个问题没有一个笼统的答案。

如果两个插入/更新语句相关,您绝对应该按照 Sam 的建议使用 cftransaction。这确保了语句被视为一个单元:即它们要么全部成功,要么全部失败。因此,您不会留下部分或不一致的数据。为了实现这一点,事务中的两个查询将使用单个连接。

I think every time we call cfquery we are opening new connection DB

正如 Sam 提到的,这取决于您的设置以及您是否使用 cftransaction。如果启用维护连接(在 CF 管理器中的数据源设置下),CF 将维护一个打开的连接池。因此,当您运行查询时,CF 只是从池中获取一个打开的连接,而不是每次都打开一个新连接。使用 cftransaction 时,所有查询都应使用相同的连接。无论是否启用维护连接。

关于coldfusion - 如何在coldfusion中使用CFQuery执行2个或多个插入语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1882976/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com