繁体   English   中英

将新行添加到唯一表

[英]adding new row to unique table

我有一个带有唯一列“ a”的表。 我要添加一行。

如果我要添加的行具有表中已经存在的'a'值,则由于该列的唯一性,当然不会添加它,否则将添加它。 我需要检查是否添加了新行,然后它将告诉我表中是否已经存在'a'值。

检查新条目是否已添加到表中的最有效方法是什么?

编辑-就衡量而言,到目前为止最坏的情况是之前的计数和之后的计数...

我总是为此使用ON DUPLICATE KEY UPDATE (但是我通常想在唯一键已经存在时更新行...)。

然后,在PDO中,您可以获得带有$stmt->rowCount()类的返回代码,该代码为新记录提供1,为更新记录提供2。

我的意思是这样的(愚蠢的例子)

$conn = mysql_connect('bla bla bla');
if (!mysql_query("insert into my_table values ('b')")) {
    echo mysql_errno($conn) . ': ' . mysql_error($conn) . "\n";
 }
 else { 
 echo 'ok!';
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM