php标签系统 - 如果标签已存在于表中

时间:2016-10-16 14:35:34

标签: php mysql sql tags codeigniter-3

我正在建立一个标签系统,如果已经存在,则不希望添加标签表中的标签。为此,我是否需要选择并验证带有其他查询的表格,还是可以使用一个查询执行这两项查询?

 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);
    }
  }

1 个答案:

答案 0 :(得分:0)

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

alter table tags add constraint unq_tags_tagname unique tags(tagname)

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