SQLite3::backup

(PHP 7 >= 7.4.0, PHP 8)

SQLite3::backupあるデータベースを、別のデータベースにバックアップする

説明

public SQLite3::backup(SQLite3 $destination, string $sourceDatabase = "main", string $destinationDatabase = "main"): bool

SQLite3::backup() は、あるデータベースの内容を別のデータベースにコピーし、 コピー先のデータベースの内容を上書きします。 このメソッドは、データベースのバックアップを作成したり、 インメモリのデータベースを永続的なファイルにコピーしたり、その逆を行う場合に便利です。

ヒント

SQLite 3.27.0 (2019-02-07) 以降のバージョンでは、 データベースを新しいファイルにバックアップするSQLとして VACUUM INTO 'file.db'; も使えます。

パラメータ

destination

SQLite3::open() でオープンされたデータベース接続

sourceDatabase

メインデータベースの場合、データベース名は "main" です。 一時的なデータベースの場合は、"temp" になります。 また、ATTACH 文の AS キーワードの後に指定された名前が使えます。

destinationDatabase

sourceDatabase に似ていますが、 destination で接続したコピー先のデータベースを表します。

戻り値

成功した場合に true を、失敗した場合に false を返します。

例1 既存のデータベースをバックアップする

<?php
// $conn は、既にオープンされた sqlite3 データベースへの接続です。

$backup = new SQLite3('backup.sqlite');
$conn->backup($backup);
?>
関連キーワード:  データベース, バックアップ, , backup, コピー, sourceDatabase, destination, 接続, 内容, destinationDatabase