0

我的脚本正确吗?我想要的是检查 id 是否存在然后更新如果不存在然后插入。

$sqlCheckRow = mysql_query( "SELECT * FROM wctilerack WHERE gameID = '$up_gameID' " ) or die ( mysql_error() );
$rowCounted = mysql_num_rows( $sqlCheckRow );
if ( $rowCounted == '0' ) {
    // INSERT wctilerack
    $sqlTileINSERT = mysql_query( "INSERT INTO wctilerack VALUE('', '$up_gameID', '$up_email_player1', '$playerRack' ) ") or die ( mysql_error() );
} elseif ( $rowCounted == '1' ) {
    // INSERT wctilerack
    $sqlTileINSERT = mysql_query( "UPDATE wctilerack SET tiles = '$playerRack' WHERE gamedID = '$up_gameID'  ") or die ( mysql_error() );
}

我测试了它的工作我只是想确认这个过程是否正确。

谢谢你

4

3 回答 3

1

你可以这样写

INSERT INTO wctilerack VALUES ('', '$up_gameID', '$up_email_player1', '$playerRack')
  ON DUPLICATE KEY UPDATE tiles='$playerRack';
于 2012-07-15T14:58:01.303 回答
1

你也可以这样做

if (empty($rowCounted)) 
{
    $sqlTileINSERT = mysql_query( "INSERT INTO wctilerack VALUE('', '$up_gameID', '$up_email_player1', '$playerRack' ) ") or die ( mysql_error() );
}
else
{
    $sqlTileINSERT = mysql_query( "UPDATE wctilerack SET tiles = '$playerRack' WHERE gamedID = '$up_gameID'  ") or die ( mysql_error() );
}
于 2012-07-15T14:59:43.767 回答
0

试试这个::

INSERT into table values (vcolumn1, vcolumn2) on duplicate key update set column1=vcolumn1, column2=volumn2
于 2012-07-15T14:58:41.227 回答