Sql 我可以在';插入。。。重复更新时…';陈述
我试图对mysql数据库引擎运行一个使用绑定变量的查询。我想知道如何告诉引擎“重置”绑定变量赋值。我相信一个例子会比我可怜的大脑解释得更好 以下是查询:Sql 我可以在';插入。。。重复更新时…';陈述,sql,mysql,Sql,Mysql,我试图对mysql数据库引擎运行一个使用绑定变量的查询。我想知道如何告诉引擎“重置”绑定变量赋值。我相信一个例子会比我可怜的大脑解释得更好 以下是查询: INSERT INTO site_support_docs ( ASSET_ID, TIME_STAMP, SITE_NAME, DOCUMENT_NAME, DOCUMENT_LOCATION, DOCUMENT
INSERT INTO site_support_docs
(
ASSET_ID,
TIME_STAMP,
SITE_NAME,
DOCUMENT_NAME,
DOCUMENT_LOCATION,
DOCUMENT_CONTENT,
DOCUMENT_LAST_MODIFIED
)
VALUES (?, ?, ?, ?, ?, ?, STR_TO_DATE(?, '%M %e, %Y %r'))
ON DUPLICATE KEY UPDATE asset_id = ?,
time_stamp = ?,
site_name = ?,
document_name = ?,
document_location = ?,
document_content = ?,
document_last_modified =
STR_TO_DATE(?, '%M %e, %Y %r')
我的问题是,当只有七个绑定变量时,第八个“?”被解释为一个新的绑定变量。无论如何,我想我可以恢复使用实际值。。。但是,我相信有更好的办法。
MattMySQL提供了一个“VALUES()”函数,该函数提供在不存在重复密钥冲突的情况下插入的值。您不需要重复占位符
在重复键更新时插入t值(?)=值(x)