Как вставить текст в таблицу, если его там нет (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)");
→ Ссылка