如何插入sqlite视图?

时间:2011-04-14 09:25:29

标签: view insert sqlite

我有一个数据库模式,在1.sqlitedb到n.sqlitedb文件中是相同的。我使用视图来“合并”所有数据库。我的问题是:当我插入视图时,数据插入哪个数据库?有没有办法控制哪些获取数据?我需要分割数据的方式取决于数据本身。基本上,我使用字段的第一个字母来确定它插入的文件。任何帮助,将不胜感激。谢谢!

3 个答案:

答案 0 :(得分:4)

SQLite不支持写入视图,就像使用其他dbs一样。

http://www.sqlite.org/omitted.html

为了实现类似的功能,必须创建触发器来完成必要的工作。

答案 1 :(得分:0)

我不确定我理解你的问题,但你是否考虑过使用ATTACH DATABASE命令?它允许您将单独的数据库文件连接到单个数据库。您可以通过在数据库名称前添加INSERT(INSERT INTO db1.Table)来将INSERT控制到特定数据库中。

http://www.sqlite.org/lang_attach.html

答案 2 :(得分:0)

我们需要在视图(VIEW_NAME)上实现而不是触发器。所以当插入/更新发生视图时。我们可以在触发器主体中插入更新底层对象(TABLE_NAME)。

在VIEW_NAME上创建TRIGGER trigger_name而不是INSERT 开始        插入TABLE_NAME(col1,col2)值(:new.col1,:new.col2); END;

相关问题