Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php (MYSQL)如何仅在记录不存在时插入记录';不存在于表格中_Php_Mysql_Select_Insert - Fatal编程技术网

Php (MYSQL)如何仅在记录不存在时插入记录';不存在于表格中

Php (MYSQL)如何仅在记录不存在时插入记录';不存在于表格中,php,mysql,select,insert,Php,Mysql,Select,Insert,嗨,也许这个问题已经被回答了,但是没有任何帮助 我使用的是Mysql,我想在表中插入一些数据,但我想在插入之前检查重复记录 我对如何实现这一点感到非常困惑 我需要检查“RFC==$implicate和Diagonal==10或Diagonal==20”,并显示类似“记录已经存在”的内容, 或者,如果记录不存在,则插入所有数据 这是我的剧本: <?php $Person_name=$_POST['Person_name']; $Expediente=$_POST['Expediente'];

嗨,也许这个问题已经被回答了,但是没有任何帮助

我使用的是Mysql,我想在表中插入一些数据,但我想在插入之前检查重复记录

我对如何实现这一点感到非常困惑

我需要检查“RFC==$implicate和Diagonal==10或Diagonal==20”,并显示类似“记录已经存在”的内容, 或者,如果记录不存在,则插入所有数据

这是我的剧本:

<?php
$Person_name=$_POST['Person_name'];
$Expediente=$_POST['Expediente'];
$Sexo=$_POST['Sexo'];
$Edad=$_POST['Edad'];
$Domicilio=$_POST['Domicilio'];
$numero=$_POST['Numero'];
$colonia=$_POST['Colonia'];
$Ciudad=$_POST['Ciudad'];
$Parentesco=$_POST['Parentesco'];
$ClinicaAds=$_POST['ClinicaAds'];
$Dependencia=$_POST['Dependencia'];
$Entidad=$_POST['Entidad'];
$Foraneo=isset($_POST['Foraneo']) ? 1 : 0;

$servername = "localhost";
$username = "root";
$password = "";
$dbname = "issste";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "  INSERT INTO paciente (RFC, Nombre, Sexo, FechaNacimiento, Calle, NumeroDomiciliario, Colonia, Ciudad, Dependencia, ClinicaAdscrip, Entidad, Foraneo, Diagonal)  
                SELECT '$Expediente', '$Person_name', '$Sexo', '$Edad', '$Domicilio', '$numero', '$colonia', '$Ciudad', '$Dependencia', '$ClinicaAds', '$Entidad', '$Foraneo', '$Parentesco' FROM paciente  
                WHERE NOT EXIST(  
                 SELECT RFC, Diagonal FROM paciente WHERE RFC = '$Expediente' AND Diagonal='10' OR Diagonal='20') LIMIT 1 ";  

if ($conn->query($sql) === TRUE) {
    echo "New record created successfully";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

$conn->close();
?>

修改您的查询,请尝试以下操作:

INSERT INTO paciente (RFC, Nombre, Sexo, FechaNacimiento, Calle, NumeroDomiciliario,
            Colonia, Ciudad, Dependencia, ClinicaAdscrip, Entidad, Foraneo, Diagonal)  
  SELECT '$Expediente', '$Person_name', '$Sexo', '$Edad', '$Domicilio', '$numero',
         '$colonia', '$Ciudad', '$Dependencia', '$ClinicaAds', '$Entidad', '$Foraneo',
         '$Parentesco'
  WHERE NOT EXISTS( SELECT RFC, Diagonal FROM paciente
                    WHERE RFC = '$Expediente' AND Diagonal='10' OR Diagonal='20' LIMIT 1 )

可能重复你的头衔要求一件事,但你完成了另一件事。你的问题是什么?有关错误消息,请阅读并执行操作。开始删除代码,直到没有错误。请在sqlfiddle.com或其他网站(谷歌)上尝试您的SQL。请阅读手册,重新阅读您试图使用的语句。Googel re是准确的错误消息和编号。