SQLite C 接口
伪随机数生成器
void sqlite3_randomness(int N, void *P);
SQLite 包含一个高质量的伪随机数生成器 (PRNG),用于在将新记录插入到已使用最大可能 ROWID 的表中时选择随机ROWID。PRNG 还用于内置的 random() 和 randomblob() SQL 函数。此接口允许应用程序出于其他目的访问相同的 PRNG。
对该例程的调用将 N 个字节的随机性存储到缓冲区 P 中。P 参数可以是 NULL 指针。
如果之前未调用此例程,或者如果之前的调用中 N 小于 1 或 P 的 NULL 指针,则使用从默认sqlite3_vfs对象的 xRandomness 方法获得的随机性为 PRNG 播种。如果之前对该例程的调用具有 1 或更大的 N 和非 NULL P,则伪随机性是在内部生成的,无需求助于sqlite3_vfs xRandomness 方法。