SQLite

降順にソートした結果の先頭5列だけの移動平均を出すSQL文

select の入れ子 って感じに書く select avg(current) from (select current from tbl_data where code=9984 and date<=20160310 order by date DESC limit 5) items;ネタ元 http://stackoverflow.com/questions/1854383/select-average-from-mysql-table-wi…

SQLiteでDBの整合性チェックSQL

PRAGMA integrity_check;ネタ元 http://taichino.com/engineer-life/database/4123

SQLite C言語向けAPI チートシート

SQLite C言語向けAPI チートシートです。 http://qiita.com/katsugeneration/items/26a76f66a1c9cb1710f4

SQLiteで利用可能なデータ型

格納される値のデータ型 型 解説 NULL NULL値 INTEGER 符号付整数。1, 2, 3, 4, 6, or 8 バイトで格納 REAL 浮動小数点数。8バイトで格納 TEXT テキスト。UTF-8, UTF-16BE or UTF-16-LEのいずれかで格納 BLOB Binary Large OBject。入力データをそのまま格納…

SQLiteの書き込み速度をアップさせる (System.Data.SQLite, SyncMode, JournalMode, PRAGMA)

デフォルトは、System.Data.SQLiteの場合SyncMode=Normal JournalMode=Default です。これをSyncMode=Off JournalMode=Memory にすると、爆速になります。またはSyncMode=Off JournalMode=Wal にしても同じくらい速くなります。SyncModeはNormalのままがいい…

SQLiteでの処理を高速化

INSERTでは、トランザクションをきちんと制御すべし。それでも遅い場合には、journal_modeをMEMORYにしてみるべし。ですね。ネタ元 http://uniunix.com/blog/?p=154

SQLiteの最初の一歩

SQLite極短サンプルコード #pragma comment( lib, "sqlite3.lib" ) #include <tchar.h> #include <sqlite3.h> #include <stdio.h> // 抽出結果が返るコールバック関数 static int callback(void *NotUsed, int argc, char **argv, char **azColName){ int i; for(i=0; i</stdio.h></sqlite3.h></tchar.h>

SQLiteでテーブルが存在するか確認

select count(*) from sqlite_master where type='table' and name='<テーブル名>';ネタ元 http://o-tomox.hatenablog.com/entry/2013/09/28/194634

SQliteでsqlite3_exec()を使うとメモリリークする場合

エラーメッセージをsqlite3_free()してないからでしょう res = sqlite3_exec(database, [sqlQueryStr UTF8String], NULL, NULL, &errorMsg); if (res != SQLITE_OK) { sqlite3_free(errorMsg); // <-これ sqlite3_close(database); NSLog(@"executeQuery Err…

SQLiteでテーブルにデータを追加する際、あれば更新なければ追加するには INSERT OR REPLACE

INSERT OR REPLACE INTO userinfo (id) VALUES (1);ネタ元 http://d.hatena.ne.jp/ovjang/20110331/1301574587

DB Browser for SQLiteを使ってデータベースの軽量化できる

対象のデータベースに接続してから「File」メニューの中の「Compact Database」メニューをクリックネタ元 http://www.dbonline.jp/sqlite-db-browser/manage/index1.html

SQLiteでattempt to write a readonly databaseと言われたら、書き込み権限の問題の場合あり

ネタ元 http://d.hatena.ne.jp/calpo/20110315/p1

SQLiteのロック・トランザクション関連仕様

DBのロック状態の種類: (文中の「プロセス」は、正確には「プロセス、もしくはスレッド」を意味します。) UNLOCKED ロックされていない状態。誰も読み書きしていない。DBの初期状態。 SHARED read可、write不可な状態。複数プロセスが同時にSHAREDロック…