此函数不转义双引号的原因是双引号用于名称(相当于 MySQL 中的反引号),例如表名或列名,而单引号用于值。
记住这一点很重要,尤其是在来自其他 SQL 实现的情况下。它可能会导致奇怪的问题,例如,查询
SELECT * FROM table WHERE column1="column1"
实际上会返回每条记录,因为 column1 总是等于 column1。这应该改为
SELECT * FROM table WHERE column1='column1'
双引号不会被函数转义,因为它们在单引号字符串中没有特殊解释。