mysql查询

时间:2015-08-17 14:50:53

标签: php mysql arrays increment

我需要用数组中的数据填充MYSQL表的几列。所以一列对应一个数组。我使用以下代码只用数据填充一列:

function addSystemDataTanks ($db, $tankNamesArray, $tankVolumesArray) {
    $myArray = array(); 
    $myString = implode ("'), ('",$myArray);
    $statement = "replace into myTable (ID, NAME)";
    $statement .= "values (' ";
    $statement .= $myString;
    $statement .= "')";
    $result = mysqli_query($db, $statement);

    if ($result) {
       return true;
    }
}

我需要通过自动生成的递增数字填充ID字段。但是我需要在下次提交此表单时将这些行替换为新值。要使“替换”工作,ID必须与以前使用的相同,否则它只会创建新条目。 另外,有没有更好的方法将数组作为MYSQL表中的列输入,而不是一个接一个,因为我需要所有行值彼此匹配,并且ID应该是唯一的,并且下次从表单开始时从0或1开始提交。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

如果你只想让行ID增量,你就会为自己的生活变得艰难!在MySQL中创建表时,在ID上使用AUTO_INCREMENT,然后您只需在代码中为ID输入NULL值:

CREATE TABLE blah (ID INT NOT NULL AUTO_INCREMENT, name VARCHAR(50), PRIMARY KEY(ID));

$sql = "INSERT INTO blah VALUES(NULL, 'Adam')";

“Adam”现在的ID为1:)