В настоящее время я использую следующий метод для вставки строки в таблицу, когда столбец не существует .. в противном случае я создаю новый идентификатор столбца и повторяю попытку
$item_id = $this->misc_model->generateId(18);
while ($flag == false){
$this->db->where('item_id', $item_id);
$sql = $this->db->get($this->db->dbprefix('table'));
if ($sql->num_rows()){
$item_id = $this->misc_model->generateId(18);
}else{
$flag = true;
}
}
можно ли сделать это быстрее, таким образом?
IF NOT EXISTS(SELECT 1 FROM table WHERE item_id = $item_id)
INSERT INTO table (item_id) VALUES ($item_id)