gpt4 book ai didi

view - 跨多个数据库的sqlite View

转载 作者:IT王子 更新时间:2023-10-29 06:25:35 32 4
gpt4 key购买 nike

是否可以在附加有其他数据库的 Sqlite 数据库中创建一个 VIEW(不是临时 View )?该 View 应该能够通过连接表访问所有数据库中的数据。

最佳答案

不行,view必须是临时的,否则会报错:

sqlite> create view view1 as select * from db2.foo union select * from main.foo;
Error: view view1 cannot reference objects in database db2
sqlite> create temp view view1 as select * from db2.foo union select * from main.foo;
sqlite> select * from view1;
...

这是有道理的,因为临时 View 是自动创建的 temp 数据库的一部分,它只存在于当前进程中。

编辑:

您可以这样列出临时表和 View (全部存储在自动创建的 temp 数据库中):

sqlite> .headers on
sqlite> select * from sqlite_temp_master;
type|name|tbl_name|rootpage|sql
view|view1|view1|0|CREATE VIEW view1 as select * from db2.foo union select * from main.foo

仅列出 View :

select * from sqlite_temp_master where type='view';

关于view - 跨多个数据库的sqlite View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10410180/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com