Боюсь, это невозможно.Согласно документации , trigger-name
является атомарной синтаксической единицей (из нее видно, что она строчная, в прямоугольнике с закругленными углами), в том смысле, что она не может быть построена путем вычисления сложных выражений.Вам разрешено вводить здесь только литерал (кстати, с table-name
и index-name
, см. здесь и здесь ).
Что вы можетеdo вместо этого динамически создает всю строку запроса, перед передачей ее SQLite.Например, если вы взаимодействуете с SQLite через Python, вы можете написать что-то вроде:
tableName = "someRandomString"
db.execute("CREATE TABLE " + tableName + " (A INT, B TEXT)")
Или, если вы используете командную строку Windows:
set tableName=someRandomString
sqlite3.exe test.sqlite "CREATE TABLE %tableName% (A INT, B TEXT)"
Я знаю, что вы спрашивалио триггерах, а не таблицах, но с точки зрения вашего вопроса это в основном одно и то же, а синтаксис создания таблиц короче.