【问题标题】:how to know whether an entry into database is unique or not如何知道数据库中的条目是否唯一
【发布时间】:2014-12-08 04:59:46
【问题描述】:

我有一个由两列 url 和该 url 的 html 代码组成的表。使用的列名是 url_in 和 html_code。我使用 PHP mysql 将数据输入到表中。现在我的问题是我想创建一个函数,一旦我们输入 url,我希望该函数检查 url 是否已经存在于表中,如果存在,那么代码应该回显已经添加的 url,否则它应该将 url 添加到数据库中。

【问题讨论】:

  • 我之前回答了一个几乎完全一样的问题。 stackoverflow.com/questions/27348719/…
  • 但我想要 php 的方式
  • 你为什么不让你的数据库处理这个?它在这方面做得更好,而且它是可移植的;如果您的应用程序不再使用 PHP,那么您的数据库仍将强制执行唯一约束。
  • 我完全同意@Makoto,这是我在另一个问题中给出的答案。

标签: php mysql sql database


【解决方案1】:

试试这个代码。

function check_unique($url){
      $sql = "select * from table_name where url_in = '$url'";
      $result = mysql_query($sql); //use mysqli instead of mysql. Here I use mysql for example
      if(mysql_num_rows($result)===0){
            return true;
      }else{
            return false;
      }
}

现在你以这个函数为例

$url = "http://www.google.com";

//check unique
$isUnique = check_unique($url);

if($isUnique){
     //do insert query
}else{
     echo 'URL already exist';
}

【讨论】:

    【解决方案2】:

    试试这个:

    INSERT INTO table(url_in , html_code)
      SELECT 'YOUR_URL','YOUR HTML CODE' FROM DUAL
    WHERE NOT EXISTS 
      (SELECT url_in  FROM table WHERE url_in ='YOUR_URL');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-06
      • 1970-01-01
      • 1970-01-01
      • 2018-11-22
      • 1970-01-01
      • 2020-06-04
      • 1970-01-01
      相关资源
      最近更新 更多