--- title: mozIStorageService slug: mozIStorageService ---

このインタフェースを使うことでデータベースへのmozIStorageConnectionを開くことができます、また開かれていないデータベースファイルのバックアップを作成することもできます。

storage/public/mozIStorageService.idlScriptable
Please add a summary to this article.
  最終更新: Gecko 1.9 (Firefox 3)

継承元: nsISupports

メソッド概要

nsIFile backupDatabaseFile(in nsIFile aDBFile, in AString aBackupFileName, [optional] in nsIFile aBackupParentDirectory);
mozIStorageConnection openDatabase(in nsIFile aDatabaseFile);
mozIStorageConnection openSpecialDatabase(in string aStorageKey);
mozIStorageConnection openUnsharedDatabase(in nsIFile aDatabaseFile);

メソッド

backupDatabaseFile()

指定されたファイルのバックアップを作成します。データベースは開かれていない必要があります、またはこのメソッドを呼び出す際にデータベースに対する操作が行われないことが確かである必要があります。指定されたファイル名はあくまでもサジェスチョンになります。すでにファイル名が使われている場合、ユニークなファイル名になるように処理されます。実際のバックアップファイルは戻り値になり、実際のファイル名もそこから取得することができます。

nsIFile backupDatabaseFile(
  in nsIFile aDBFile,
  in AString aBackupFileName,
  [optional] in nsIFile aBackupParentDirectory
);
引数
aDBFile
バックアップを取るデータベースファイル
aBackupFileName
新しく作成するバックアップファイルの名前
aBackupParentDirectory
バックアップファイルを格納するディレクトリの名前。この引数が指定されない場合はオリジナルのデータベースファイルと同じ場所にバックアップファイルが作成されます。
戻り値

新しいバックアップデータベースファイルを意味するnsIFileオブジェクト

openSpecialDatabase()

要求されたストレージのタイプを特定する命名された特別なデータベースストレージへの接続を開きます。

註: プロファイルデータベースへはメインスレッドからのみアクセスしてください。(他の呼び出しが利用している可能性があります。)

引数
aStorageKey
要求されたストレージタイプを特定するキー文字列。"profile"および"memory"が有効です。
戻り値

指定されたデータベースへの接続を提供する新しいmozIStorageConnectionオブジェクト

例外
NS_ERROR_INVALID_ARG
aStorageKeyが不正な場合

openDatabase()

指定されたファイルへのデータベース接続を開きます。このメソッドがNS_ERROR_FILE_CORRUPTED例外をスローする場合、mozIStorageService.backupDatabaseFile()メソッドをデータベースをバックアップするために呼び出すことが推奨されます。こうすることでユーザデータの喪失を防ぐことができます。(現在失われたデータを復旧する手段はありません。)

警告: 単一のファイルに対して複数の接続を確立する場合、必ず毎回大文字小文字を含め正確に同じ名前を使用してください。SQLiteのプログラムは既に接続が開かれているかどうかを調べるために、単純な文字列比較によって判断しています。"Foo.sqlite" と "foo.sqlite" により接続を開いた場合はあなたのデータベースは破損してしまうでしょう。

もし、仮想テーブルをデータベース中に含むのであれば(例えば、全文インデックスなど)、mozIStorageService.openUnsharedDatabase()を開く際に使うべきです。なぜならばこのようなテーブルは共有キャッシュが使えないためです。このメソッドを仮想テーブルを含むデータベースへの接続を開くために用いた場合、データベースの破損とNS_ERROR_FILE_CORRUPTED例外のスローが発生するでしょう。

mozIStorageConnection openDatabase(
  in nsIFile aDatabaseFile
);
引数
aDatabaseFile
データベースとして開くためのnsIFileオブジェクト
戻り値

開かれたデータベース接続であるmozIStorageConnectionオブジェクト

例外
NS_ERROR_FAILURE
データベースを開こうとした際にエラーが起こった場合発生
NS_ERROR_FILE_CORRUPTED
データベースファイルが破損した場合、またはデータベースが(このメソッドでは対応していない)仮想テーブルを含む場合に発生
NS_ERROR_OUT_OF_MEMORY
新しいストレージオブジェクトの割り当てが失敗した場合に発生

openUnsharedDatabase()

共有キャッシュを使わずに指定されたファイルへのデータベース接続を開きます。このメソッドがNS_ERROR_FILE_CORRUPTED例外をスローする場合、mozIStorageService.backupDatabaseFile()メソッドをデータベースバックアップのために呼び出すことが推奨されます。こうすることでユーザデータの喪失を防ぐことができます。(現在失われたデータを復旧する手段はありません。)

警告: 単一のファイルに対して複数の接続を確立する場合、必ず毎回大文字小文字を含め正確に同じ名前を使用してください。SQLiteのプログラムは既に接続が開かれているかどうかを調べるために、単純な文字列比較によって判断しています。"Foo.sqlite" と "foo.sqlite" により接続を開いた場合はあなたのデータベースは破損してしまうでしょう。

mozIStorageConnection openUnsharedDatabase(
  in nsIFile aDatabaseFile
);
引数
aDatabaseFile
データベースとして開くためのnsIFileオブジェクト
戻り値

開かれたデータベース接続であるmozIStorageConnectionオブジェクト

例外
NS_ERROR_FAILURE
データベースを開こうとした際にエラーが起こった場合発生
NS_ERROR_FILE_CORRUPTED
データベースファイルが破損した場合、またはデータベースが(このメソッドでは対応していない)仮想テーブルを含む場合に発生
NS_ERROR_OUT_OF_MEMORY
新しいストレージオブジェクトの割り当てが失敗した場合に発生

参照