Как вставить текст в таблицу, если его там нет (INSET IF NOT EXISTS)?
Мне нужно вставить текст в таблицу, если его там нет. Как это можно сделать?
Вот мой код:
$usersDB = new SQLite3("cache/".$usersDBFileName);
$usersDBQuery = $usersDB->query("INSERT INTO users(id,text_id) VALUES (NULL, $userid) ");
Вот как я создавал базу данных:
$usersDBQuery = $usersDB->query("
CREATE TABLE users (
id integer PRIMARY KEY AUTOINCREMENT,
text_id text
)
");
Ответы (1 шт):
Автор решения: Вадим Александру
→ Ссылка
Укажем уникальную колонку при создании таблицы
$usersDBQuery = $usersDB->query("
CREATE TABLE users (
id integer PRIMARY KEY AUTOINCREMENT,
text_id text UNIQUE
)
");
Далее обновляем таким методом:
$usersDBQuery = $usersDB->query("INSERT OR IGNORE users(text_id) VALUES ($userid)");