在我的表单中,我有通过添加更多点击按钮动态生成的文件类型输入字段。 一切都很好,当我插入数据但我更新第二个表时遇到问题 我只使用商店文件类型数据。
我已经分析了一些案例:
Case 1: if value exist is equal to new value then update
Case 2: if value not exist then insert data
Case 3: if value exist and greater than previous value then update the previous value and insert new data
case 4: if value exist and less than previous value then update previous and other value will be remain same(no change).
到目前为止,我已尝试
$array_filename = trim($array_filename, ",");
$filename_array = explode(',', $array_filename);
$query = mysql_query("SELECT * FROM
tbl_name_2 WHERE
job_app_id ='$editId' ");
$res = mysql_fetch_array($query);
for($i=0;$i<coun($filename_array);$i++) {
$insertQuery = "REPLACE INTO
tbl_name_2 (
id ,
job_app_id ,
file_name ) VALUES ('$res[$i]','$editId','$filename_array[$i]')";
$isInsert = mysql_query($insertQuery) or die(mysql_error());
}
< / p>
答案 0 :(得分:0)
mysql update如果存在,则插入
应该更好地描述为 INSERT ELSE UPDATE - 以及ON DUPLICATE KEY UPDATE
个关键字和正确的唯一键约束(假设uniqueKey
)列是唯一的):
INSERT INTO
myTable (`id`, `uniqueKey`, `value2`) VALUES (null,"test1",17)
ON DUPLICATE KEY UPDATE
value2 = 17;
这涵盖了您的案例1
和2
:数据已插入或更新。
对于你的案例3
和4
,目前还不清楚,你在问什么?这些陈述似乎是针对多个表格,或者更新以前的值并插入新数据是什么意思?