b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

内存大小分配给一个SQLite内存(内存分配大小

电脑杂谈  发布时间:2020-05-03 03:15:05  来源:网络整理

内存 sqlite_内存sqlite_sqlite内存

如果使用以下语法在内存中创建SQLite,分配给它的最大内存大小是多少?

my $dbh = DBI->connect('dbi:SQLite:dbname=:memory:');

如果内存的大小大于最大可用内存,会发生什么情况.

sqlite内存_内存 sqlite_内存sqlite

假设我有1 GB的1.1 GB可用大小,然后将一些数据写入磁盘或什么?

是否可以更改分配给内存SQLite的最大内存值?

它将使用虚拟内存,是的,它会写出到磁盘,一旦您超出了所有可用的内存,当它中断时内存 sqlite,它可能会抛出异常并具有不确定的行为,这可能与操作系统. 这些是SQLite的局限性:

内存sqlite_内存 sqlite_sqlite内存

如果要设置最大大小,则可以执行以下SQL命令:

PRAGMA page_size = 512
PRAGMA max_page_count = 195313

在Perl中:

sqlite内存_内存sqlite_内存 sqlite

$dbh = DBI->connect('dbi:SQLite:dbname=:memory:');
$query_handle = $dbh->prepare("PRAGMA page_size = 512");
$query_handle->execute();
$query_handle = $dbh->prepare("PRAGMA max_page_count = 195313");
$query_handle->execute();

您可以通过以下方法进行测试: 创建一个临时表并使用循环插入大量对象,直到达到极限为止.

这会将您的最大大小设置为100000256字节.

内存sqlite_sqlite内存_内存 sqlite

SQLite存储在页面中,这将设置的页面大小和最大页面数. 您可以使用任一参数来满足您的需要;较大的页面意味着更高的性能,但是增长更快.

这些都是说SQLite支持编译指令: #pragma_page_size.

这是使用Python进行的简单测试:

import sqlite3
con = sqlite3.connect(':memory:')
cur = con.cursor() 
cur.execute("PRAGMA max_page_count = 195313")
cur.execute("PRAGMA page_size = 512")
cur.execute("CREATE TABLE test (random_values TEXT)")
index = 0
query = "INSERT INTO test (random_values) VALUES ('%s')" % "".join(['a' for index in xrange(1000)])
while True:
    try:
        c = cur.execute(query)
        index += 1
    except Exception as ex:
        print str(ex)  
        break       
print index * 1000

您很快就会得到这样的东西:

sqlite3.OperationalError: 或磁盘已满

由于开销字节,我得到93915000内存 sqlite,所以如果您想使用设置来播放100兆字节.


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-197146-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...