php 标签系统 - 如果标签已经存在于 table
php tag system - if tag already exists in table
我正在建立一个标签系统,并且不希望在标签 table 中添加一个标签(如果它已经存在)。为此,我是否需要 select 并通过其他查询验证 table,或者我可以通过一个查询来完成两者吗?
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);
}
}
数据库可以处理这个。在标签名称上创建唯一约束:
alter table tags add constraint unq_tags_tagname unique tags(tagname)
如果您尝试插入相同的名称两次,您的插入代码将生成错误。
我正在建立一个标签系统,并且不希望在标签 table 中添加一个标签(如果它已经存在)。为此,我是否需要 select 并通过其他查询验证 table,或者我可以通过一个查询来完成两者吗?
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);
}
}
数据库可以处理这个。在标签名称上创建唯一约束:
alter table tags add constraint unq_tags_tagname unique tags(tagname)
如果您尝试插入相同的名称两次,您的插入代码将生成错误。