我在MySQL中有一个全新的表,可以这样描述:
+-----------+----------+-------+------+-----+-------+
| Team | Match | Auto | Gear | Kpa | Climb |
+-----------+----------+-------+------+-----+-------+
| 1721 | 1 | 3 | 5 | 5 | 1 |
+-----------+----------+-------+------+-----+-------+
| 5813 | 2 | 2 | 2 | 15 | 0 |
+-----------+----------+-------+------+-----+-------+
当我尝试使用以下语法在表中创建新条目时
INSERT INTO 2017marea (Team, `Match`, Auto, Gear, Kpa, Climb) VALUES ('1721', '19', '3', '5`, `15`, `1`);
然后我再次打印表格我只能看到1721的最新唱片,而不是他们的旧唱片。我尝试使用自动增量主键添加第四列,但它仍然保持相同的行为。
如何在将新数据写入数据库时阻止它覆盖旧数据?
编辑为清晰起见:以下是插入命令后新表的外观。
+-----------+----------+-------+------+-----+-------+
| Team | Match | Auto | Gear | Kpa | Climb |
+-----------+----------+-------+------+-----+-------+
| 5813 | 2 | 2 | 2 | 15 | 0 |
+-----------+----------+-------+------+-----+-------+
| 1721 | 19 | 3 | 5 | 15 | 1 |
+-----------+----------+-------+------+-----+-------+
编辑:用于创建表格的函数:
CREATE TABLE `2017marea` (`Team` INT(25) NOT NULL, `Match` INT(25) NOT NULL, `Auto` TINYINT(2) NOT NULL, `Gear` TINYINT(2) NOT NULL, `Kpa` TINYINT(2) NOT NULL, `Climb` TINYINT(2) NOT NULL);
更多修改:mysql_
来自mysqli_
垫片(是的。我知道。我知道。它永远不会离开本地网络。)
确定。这已成为PHP问题。
我再也无法在MySQL控制台中重现问题了。我把问题分解为我的PHP代码。我仍然不确定问题是什么 - insert ignore
也不起作用。
更多编辑,哦,男孩。这是我整个PHP逻辑的副本。我在这里提供的一个例子的数据库与实际不同(不像表格那么大),所以PHP代码略有不同。无论如何,这是:
if (isset($_POST['team']) && isset($_POST['match']) && isset($_POST['auto']) && isset($_POST['gear']) && isset($_POST['kpa']) && isset($_POST['climb'])) {
$team = mysql_real_escape_string($_POST['team']);
$match = mysql_real_escape_string($_POST['match']);
$auto = mysql_real_escape_string($_POST['auto']);
$gear = mysql_real_escape_string($_POST['gear']);
$kpa = mysql_real_escape_string($_POST['kpa']);
$climb = mysql_real_escape_string($_POST['climb']);
$postQuery = mysql_query("INSERT INTO 2017marea (Team, `Match`, Auto, Gear, Kpa, Climb) VALUES ($team, $match, $auto, $gear, $kpa, $climb)") or die("MySQL Error: " . mysql_error());
if ($postQuery) {
echo "<script> window.location.replace('../scouting/index.php?s=1')</script>";
} else {
echo "<script> window.location.replace('../scouting/index.php?f=1')</script>";
}
} else {
// This is an HTML form. Truncated for easy display.
}