0

是否有一些类或方法来限制 SQLite 数据库中记录的大小或数量,并在第一个数据库满时自动创建一个新数据库(达到限制)?

我的 SQLite DB 的大小可以达到 500mb,并且在共享主机上它不起作用。所以,我想把它分成 10 个 50 MB 左右的数据库。

如果创建了几个,这是否也允许从正确的数据库中轻松读取?

4

1 回答 1

1

ATTACH可以使用以下命令在一个会话中打开其他数据库:

ATTACH '/data/db1.sqlite' AS db1; -- opens or creates that file
ATTACH '/data/db2.sqlite' AS db2;

CREATE TABLE db1.customers(...);
CREATE TABLE db2.product(...);
CREATE TABLE main.orders(...);    -- "main" is the connection's default database

SELECT * FROM customers, orders WHERE orders.custid = customers.id ...
                                  -- table names are searched for in all DBs

但是,不能自动拆分数据库;每个表(及其索引)必须完全存储在一个文件中。如果您的大部分数据都在一个表中,那么这对您毫无帮助。

于 2012-10-14T12:26:18.830 回答