mySQL - 创建函数?修改 SQL 数据?
-
12-11-2019 - |
题
我正要写一个 CREATE FUNCTION
和 mysql 我想知道,如果 CREATE TEMPORARY TABLE
计入旗帜 MODIFIES SQL DATA
. 。功能 不修改任何永久表, ,只是为了优化目的而创建的临时表。我应该使用标志吗 MODIFIES SQL DATA
或仅 READS SQL DATA
?什么是真正的 益处 使用 MODIFIES SQL DATA
或者 READS SQL DATA
无论如何,旗帜?
解决方案
截至目前(MySQL 5.5),这些特性仅作为代码内文档。
从 http://dev.mysql.com/doc/refman/5.5/en/create-procedure.html
几个特征提供了有关例程数据使用性质的信息。在 MySQL 中,这些特性仅供参考。该服务器不使用它们来约束将允许执行例程的哪些语句。
这与 (NON)DETERMINISTIC
子句,作为优化器是否可以缓存函数结果的提示。
不隶属于 StackOverflow