dougu1985 2017-02-08 14:50
浏览 29

避免重复列错误

I've been trying to figure out why I get a duplicate column error when adding a column to a mysql DB using php but it's confusing me.

$sql = "SHOW TABLES from $tbl_name";
$result = $conn2->query($sql);
if ($result->num_rows > 0) {

    $i = 0;
    while($row = $result->fetch_array()) {
        $test = $row[$i];
        $sql2 = "ALTER TABLE $test ADD COLUMN abc VARCHAR( 255 )";
        $result2 = $conn2->query($sql2);
        if ($conn2->query($sql2) === TRUE) {} else {echo "Error: " . $sql2 . "<br>" . $conn2->error;}
    }
}

This code works and adds a column to each table, however it give error output like this:

Duplicate column name 'abc'Error: ALTER TABLE hyft ADD COLUMN abc VARCHAR( 255 )
Duplicate column name 'abc'Error: ALTER TABLE ibgk ADD COLUMN abc VARCHAR( 255 )
Duplicate column name 'abc'Error: ALTER TABLE ihrd ADD COLUMN abc VARCHAR( 255 )
Duplicate column name 'abc'Error: ALTER TABLE imc ADD COLUMN abc VARCHAR( 255 )
Duplicate column name 'abc'Error: ALTER TABLE intn ADD COLUMN abc VARCHAR( 255 )

So my question is why does it think there are duplicate columns and how to avoid this?

  • 写回答

0条回答 默认 最新

    报告相同问题?