Możesz użyć WHERE
klauzulę o tym. Przekształć swoje INSERT VALUES na INSERT SELECT i dodaj WHERE
klauzula.
Na przykład
INSERT INTO fields (field_name, control_type_id, needs_approval)
SELECT
'Array Photos', 3, 0
WHERE Condition;
Jeśli warunek jest prawdziwy, wstawi wiersz. Jeśli Warunek jest fałszywy, SELECT
zwróci zero wierszy, a zatem INSERT wstawi zero wierszy.
Jeśli powyższe zapytanie nie zostanie uruchomione z powodu błędu składni, możesz, jak wspomniał @spencer7593, dodać FROM DUAL
.
INSERT INTO fields (field_name, control_type_id, needs_approval)
SELECT
'Array Photos', 3, 0
FROM DUAL
WHERE Condition;
DUAL
table jest zasadniczo tabelą fikcyjną, która ma przewidywalną zawartość i można na niej polegać, że zawsze ma co najmniej jeden wiersz .