sqlite3究竟能支持多大的数据量

sqlite3到底能支持多大的数据量?
网上很多人说sqllite可支持TB级别的数据量,可为什么我在向sqllite数据库中写入数据的时候每当写入到2G这个临界点的时候数据文件就会损坏呢。(从2GB大小编程1MB多点)

分析一些原因,也没找到问题所在
可能原因:
正在写入数据的时候断电(没有断电,排除)
磁盘坏道(向硬盘放置一些其他的文件,将这部分磁盘占用掉,再去写入文件,同样到2G崩溃)
缓存大小的设置(sqllite在写入文件的时候会首先将数据放入到缓存中,然后再向数据文件中写入,可能是缓存设置的小了,  针对这个可能原因我是这么测试的,首先向数据库中写入1.9GB大小的数据,给予他足够的时间去处理,同样到2G崩溃   ,我觉得这个原因可以排除)
sqllite数据文件所在磁盘空间不足(硬盘空间足够,而且sqllite也没有Oracle中表空间的概念,排除)

最可能的原因也就是可能是sqllite有一些可设置的参数影响着sqllite数据文件的大小?但是我没查到。


请求大家帮助sqlite3究竟能支持多大的数据量

最近一直在针对Oracle、Mysql、SQL Server 、Sqllite3这几个数据库进行调研,到现在也没找出哪个数据库适合我们的项目。





------解决方案--------------------
SQLITE对并发(网络)支持不好,建议使用SYBASE的ASA。
------解决方案--------------------
还真没听说过sqlite支持TB级,它的大小受制于运行时的文件系统。

------解决方案--------------------
你的操作系统,文件系统是什么版本? 操作系统本身对文件大小的限制是什么?
------解决方案--------------------
引用
Maximum Database Size

Every database consists of one or more "pages". Within a single database, every page is the same size, but different database can have page sizes that are powers of two between 512 and 65536, inclusive. The maximum size of a database file is 2147483646 pages. At the maximum page size of 65536 bytes, this translates into a maximum database size of approximately 1.4e+14 bytes (140 terabytes, or 128 tebibytes, or 140,000 gigabytes or 128,000 gibibytes).

This particular upper bound is untested since the developers do not have access to hardware capable of reaching this limit. However, tests do verify that SQLite behaves correctly and sanely when a database reaches the maximum file size of the underlying filesystem (which is usually much less than the maximum theoretical database size) and when a database is unable to grow due to disk space exhaustion.


检查SQLITE版本,检查操作系统磁盘格式,确定是否是 NTFS
------解决方案--------------------
sqlite3究竟能支持多大的数据量

随便把这段话中的某句复制到 google 中就可以找到了。
------解决方案--------------------
sqlite3究竟能支持多大的数据量sqlite3究竟能支持多大的数据量