SQLiteのエラーコード
コードやエラーメッセージで検索し、公式の説明やトラブルシューティング・診断へのリンクを確認できます。
検索はブラウザー内で処理します。同じ番号でも製品によって意味が異なります。
SQLite コード
101件- nolfs
SQLITE_NOLFS エラーは、大規模ファイルをサポートしていないシステムで、データベースがファイル システムで処理できるサイズを超えると返されることがあります。 「NOLFS」は「NO Large File Support」の略です。
SQLiteSQLite - nomem
SQLITE_NOMEM 結果コードは、SQLite が操作を完了するために必要なすべてのメモリを割り当てることができなかったことを示します。つまり、操作を続行するために割り当てられたメモリが必要な場合、sqlite3_malloc() または sqlite3_realloc() への内部呼び出しが失敗しました。
SQLiteSQLite - notadb
ファイルを開こうとすると、SQLITE_NOTADB エラーは、開かれているファイルが SQLite データベース ファイルではないようであることを示します。
SQLiteSQLite - notfound
SQLITE_NOTFOUND 結果コードは、次の 3 つの方法で公開されます。 SQLITE_NOTFOUND 結果コードは SQLite 実装によって内部でも使用されますが、それらの内部使用はアプリケーションには公開されません。
SQLiteSQLite - notice
SQLITE_NOTICE 結果コードは、どの C/C++ インターフェイスからも返されません。ただし、SQLITE_NOTICE (またはその拡張エラー コードの 1 つ) は、異常な操作が発生していることを示すために sqlite3_log() コールバックの最初の引数として使用されることがあります。
SQLiteSQLite - notice recover rollback
SQLITE_NOTICE_RECOVER_ROLLBACK 結果コードは、ホット ジャーナルがロールバックされるときに sqlite3_log() のコールバックに渡されます。
SQLiteSQLite - notice recover wal
WAL モードのデータベース ファイルがリカバリされると、SQLITE_NOTICE_RECOVER_WAL 結果コードが sqlite3_log() のコールバックに渡されます。
SQLiteSQLite - perm
SQLITE_PERM 結果コードは、新しく作成されたデータベースに対して要求されたアクセス モードを提供できなかったことを示します。
SQLiteSQLite - protocol
SQLITE_PROTOCOL 結果コードは、SQLite で使用されるファイル ロック プロトコルに問題があることを示します。 SQLITE_PROTOCOL エラーは現在、WAL モードを使用し、新しいトランザクションを開始しようとした場合にのみ返されます。 2 つの別々のデータベース接続の両方が WAL モードで同時にトランザクションを開始しようとすると、競合状態が発生する可能性があります。レースの敗者は後退し、少し遅れて再挑戦します。同じ接続が数秒間にわたって何十回もロック競合に負けた場合、最終的には諦めて SQLITE_PROTOCOL を返します。 SQLITE_PROTOCOL エラーが実際に発生するのは、非常にまれであり、多くの個別のプロセスがすべて同じデータベースに書き込むために激しく競合している場合にのみ発生します。
SQLiteSQLite - range
SQLITE_RANGE エラーは、sqlite3_bind ルーチンの 1 つに対するパラメータ番号引数、または sqlite3_column ルーチンの 1 つの列番号が範囲外であることを示します。
SQLiteSQLite - readonly
現在のデータベース接続に書き込み権限がないデータを変更しようとすると、SQLITE_READONLY 結果コードが返されます。
SQLiteSQLite - readonly cantinit
SQLITE_READONLY_CANTINIT 結果コードは、VFS の xShmMap メソッドに由来し、WAL モードで使用される共有メモリ領域が存在するが、現在のプロセスが共有メモリ領域に対する書き込み権限を持っていないため、その内容が信頼できず、現在のプロセスで使用できないことを示します。 (WAL モードの共有メモリ領域は、通常、プロセス空間に mmap される「-wal」接尾辞が付いたファイルです。現在のプロセスにそのファイルに対する書き込み権限がない場合、共有メモリに書き込むことはできません。) SQLite 内の上位レベルのロジックは通常、エラー コードをインターセプトし、一時的なメモリ内共有メモリ領域を作成して、現在のプロセスが少なくともデータベースの内容を読み取れるようにします。この結果コードはアプリケーション インターフェイス層に到達すべきではありません。
SQLiteSQLite - readonly cantlock
SQLITE_READONLY_CANTLOCK エラー コードは、SQLITE_READONLY の拡張エラー コードです。 SQLITE_READONLY_CANTLOCK エラー コードは、データベースに関連付けられた共有メモリ ファイルが読み取り専用であるため、SQLite が WAL モード データベースの読み取りロックを取得できないことを示します。
SQLiteSQLite - readonly dbmoved
SQLITE_READONLY_DBMOVED エラー コードは、SQLITE_READONLY の拡張エラー コードです。 SQLITE_READONLY_DBMOVED エラー コードは、データベース ファイルが開かれてから移動されているためデータベースを変更できないことを示します。そのため、データベースを変更しようとすると、ロールバック ジャーナルの名前が正しく付けられずにプロセスがクラッシュすると、データベースが破損する可能性があります。
SQLiteSQLite - readonly directory
SQLITE_READONLY_DIRECTORY 結果コードは、プロセスがデータベースと同じディレクトリにジャーナル ファイルを作成する権限を持たず、ジャーナル ファイルの作成が書き込みの前提条件であるため、データベースが読み取り専用であることを示します。
SQLiteSQLite - readonly recovery
SQLITE_READONLY_RECOVERY エラー コードは、SQLITE_READONLY の拡張エラー コードです。 SQLITE_READONLY_RECOVERY エラー コードは、データベース ファイルをリカバリする必要があり、リカバリには書き込みアクセスが必要だが、使用できるのは読み取りアクセスのみであるため、WAL モード データベースを開けないことを示します。
SQLiteSQLite - readonly rollback
SQLITE_READONLY_ROLLBACK エラー コードは、SQLITE_READONLY の拡張エラー コードです。 SQLITE_READONLY_ROLLBACK エラー コードは、ロールバックする必要があるホット ジャーナルがあるデータベースがオープンできないが、データベースが読み取り専用であるためにオープンできないことを示します。
SQLiteSQLite - schema
SQLITE_SCHEMA 結果コードは、データベース スキーマが変更されたことを示します。この結果コードは、sqlite3_prepare() または sqlite3_prepare16() を使用して生成された準備済みステートメントの sqlite3_step() から返されます。ステートメントが準備されてからステートメントが実行されるまでの間に、データベース スキーマが他のプロセスによって変更された場合、このエラーが発生する可能性があります。 準備されたステートメントが sqlite3_prepare_v2() から生成される場合、スキーマが変更されるとステートメントは SQLITE_MAX_SCHEMA_RETRY 回 (デフォルト: 50) まで自動的に再準備されます。 sqlite3_step() インターフェイスは、この回数の再試行後も失敗が続く場合にのみ SQLITE_SCHEMA をアプリケーションに返します。
SQLiteSQLite - toobig
SQLITE_TOOBIG エラー コードは、文字列または BLOB が大きすぎることを示します。 SQLite の文字列または BLOB のデフォルトの最大長は 1,000,000,000 バイトです。この最大長は、SQLITE_MAX_LENGTH コンパイル時オプションを使用してコンパイル時に変更することも、sqlite3_limit(db,SQLITE_LIMIT_LENGTH,...) インターフェイスを使用して実行時に変更することもできます。 SQLITE_TOOBIG エラーは、SQLite がコンパイル時または実行時の制限を超える文字列または BLOB を検出した場合に発生します。 SQLITE_TOOBIG エラー コードは、サイズが大きい SQL ステートメントが sqlite3_prepare_v2() インターフェイスの 1 つに渡された場合にも発生する可能性があります。 SQL ステートメントの最大長のデフォルトは、同様の値の 1,000,000,000 バイトです。 SQL ステートメントの最大長は、SQLITE_MAX_SQL_LENGTH を使用してコンパイル時に、または sqlite3_limit(db,SQLITE_LIMIT_SQL_LENGTH,...) を使用して実行時に設定できます。
SQLiteSQLite - warning
SQLITE_WARNING 結果コードは、どの C/C++ インターフェイスからも返されません。ただし、SQLITE_WARNING (またはその拡張エラー コードの 1 つ) は、異常でおそらく不適切な操作が行われていることを示すために、sqlite3_log() コールバックの最初の引数として使用されることがあります。
SQLiteSQLite - warning autoindex
SQLITE_WARNING_AUTOINDEX 結果コードは、自動インデックス作成が使用されるたびに sqlite3_log() のコールバックに渡されます。これは、データベースにインデックスを追加するとメリットが得られる可能性があるというアプリケーション設計者への警告として機能します。
SQLiteSQLite