[英]Sqlite3 trigger: add a column
我有一個想法在sqlite3中實現。 這可以在觸發器alter table中使用new.something的名稱添加列嗎?
簡單的例子:
CREATE TRIGGER add_something AFTER INSERT ON simple_table
BEGIN:
ALTER TABLE second_table add column NEW.simple_name int;
END;
當我嘗試這個時,我有語法錯誤。 在postgres我只是執行EXECUTE,但sqlite是非常簡單和特定的簡單數據庫所以我不知道如何做到這一點...我嘗試轉換為文本並與''連接。
您不能在觸發器中使用ALTER TABLE
語句。
要執行動態SQL語句,您必須注冊自己的函數,它可以執行任何操作:
CREATE TRIGGER add_something
AFTER INSERT ON simple_table
BEGIN
SELECT my_function(NEW.simple_name);
END;
不,這是不可能的。 您只能在SQLite觸發器中使用INSERT,UPDATE,DELETE和SELECT語句(參見CREATE TRIGGER上的SQLite文檔 )。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.