【问题标题】:php tag system - if tag already exists in tablephp 标签系统 - 如果标签已经存在于表中
【发布时间】:2024-10-03 21:15:02
【问题描述】:

我正在建立一个标签系统,如果标签表中已经存在标签,我不希望它被添加。为此,我是否需要使用附加查询来选择和验证表,或者我可以通过一个查询来完成这两者?

 if (isset($tag_array)) {
    foreach ($tag_array as $tag_name) {
    $data = array('tag_id' => '', 'name' => $tag_name, 'slug' => '');

    $str = $this->db->insert_string('tags', $data);
    $this->db->query($str);
    }
  }

【问题讨论】:

    标签: php mysql sql tags codeigniter-3


    【解决方案1】:

    数据库可以处理这个问题。在标签名称上创建唯一约束:

    alter table tags add constraint unq_tags_tagname unique tags(tagname)
    

    如果您尝试两次插入相同的名称,您的插入代码将产生错误。

    【讨论】:

      最近更新 更多