如何检查行是否存在值

f45qwnt8  于 2021-06-18  发布在  Mysql
关注(0)|答案(2)|浏览(297)

所以我第一次运行它时,输出是数据添加的,第二次运行它时,输出是数据存在的,如果我将值更改为888和999,但它仍然插入到表中,该怎么办?因为在未来的价值将回到123和456。谢谢,如果有人纠正我的问题,我将不胜感激

<?php 
$conn = mysqli_connect('localhost', 'root', '', 'database') or die('Error connecting to MySQL server');

$check=mysqli_query($conn,"SELECT col1, col2 FROM mytable");
$checkrows=mysqli_num_rows($check);

if ($checkrows > 0) 
{
    echo "<br>data exists";
}
else
{  
  $sql = "INSERT INTO mytable (`col1`, `col2`) VALUES ('123', '456')";
  $conn->query($sql);
  echo "<br>data added";
}
?>
k10s72fa

k10s72fa1#

如果您第一次添加了123和456,而现在要添加888和999,请执行以下操作。

<?php 
$col1 = 888;
$col2 = 999;

$conn = mysqli_connect( 'localhost', 'root', '', 'database') or die('Error connecting to MySQL server' );
$sql_query = " SELECT col1, col2 FROM mytable where ( col1 = $col1 and col2 = $col2 )"
$check = mysqli_query( $conn, $sql_query );

$checkrows = mysqli_num_rows( $check );

if ( $checkrows > 0 ) {

    echo "<br>data exists";

} else {

    $sql = " INSERT INTO mytable ( `col1`, `col2` ) VALUES ( $col1, $col2 )";
    mysqli_query($conn, $sql );
    echo "<br> data added ";
}
?>
8mmmxcuj

8mmmxcuj2#

在you're$check variable中进行查询,查看数据是否已经写入,缺少where元素,在my table中,需要添加where col1='888'和col2='999'

相关问题