小巧、快速、可靠。
擇三。

SQLite C 介面

偽亂數產生器

void sqlite3_randomness(int N, void *P);

SQLite 內含一個高品質的偽亂數產生器 (PRNG),用於在將新紀錄插入已使用最大可能 ROWID 的資料表時,選取隨機 ROWID。內建的 random() 和 randomblob() SQL 函式也會使用此 PRNG。此介面允許應用程式將相同的 PRNG 用於其他目的。

呼叫此例程會將 N 個位元組的亂數儲存到緩衝區 P 中。P 參數可以是 NULL 指標。

如果先前未曾呼叫過此例程,或者先前的呼叫中 N 小於 1 或 P 為 NULL 指標,則 PRNG 會使用從預設 sqlite3_vfs 物件的 xRandomness 方法取得的亂數進行種子設定。如果先前呼叫此例程時 N 為 1 或更大,且 P 不為 NULL,則偽亂數會在內部產生,而無需使用 sqlite3_vfs 的 xRandomness 方法。

另請參閱物件常數函式列表。