Locked History Actions

Diff for "H2"

Differences between revisions 12 and 13
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= H2 Database = このページは以下に移動しました。
Line 3: Line 3:

== データ型 ==

=== 自動採番 ===

フィールドを自動採番にするには、identity型としておく。これはJava側ではLong型になる。
このフィールドは1から採番が行われるが、途中に値が強制されて挿入されたレコードが存在する場合、その値は飛ばされ、エラーになることはない。

{{{
create table sample (ide identity, value integer);
insert into sample (value) values (1); // id=1になる。
insert into sample (id,value) values(2, 2);
insert into sample (value) values (3); // id=3になる。
}}}



== バックアップ ==

 * [[http://www.h2database.com/html/tutorial.html?highlight=backup&search=backup#upgrade_backup_restore]]
 * [[http://www.h2database.com/html/grammar.html#backup]]

=== 上記ONLINE BACKUPの訳 ===

SQL文「BACKUP」とバックアップツールは共にデータベースファイルが格納されたzipファイルを生成する。この中身はヒューマンリーダブルではない(バイナリということ)。

得られるバックアップはトランザクション一貫性がある、つまり一貫性ルールとアトミックルールが適用されている。

{{{
BACKUP TO 'backup.zip'
}}}
バックアップツール(org.h2.tools.Backup)はオンラインバックアップの作成には使用できない。このプログラムを起動する際には、データベースが使用中であってはならない。

データベースが使用状態でのデータベースファイルコピーによるバックアップはサポートされていない。ただし、ファイルシステム自体がスナップショット生成をサポートしている場合を除く。それ以外のファイルシステム上では、データが正しい順序でコピーされることを保証はできない。

=== 上記BACKUP文の訳 ===

データベースファイルを.zipファイルにバックアップする。「オブジェクト」のロックはされないが、トランザクションログもコピーされるため、バックアップはトランザクション一貫性がある。このコマンドを実行するにはadmin権限が必要である。

例:
{{{
BACKUP TO 'backup.zip'
}}}

== サーバモード ==

一つのVMにてデータベースサーバを起動し、複数のクライアントVMからそのサーバに接続してデータベースを操作する形になる。
以下はバージョン3.171にて、tcpサーバのみを起動し、サーバへの接続はローカルホストからしか許さない場合。

{{{
java -cp h2-1.3.171.jar org.h2.tools.Server -tcp
}}}

Javaプログラムから、F:ドライブの\foo\bar\database.h2.dbに接続するためのURLは、

{{{
jdbc:h2:tcp://localhost/f:/foo/bar/database
}}}

もし、先のサーバがFドライブにて起動したのであれば、f:の指定は省略できる。

{{{
jdbc:h2:tcp://localhost//foo/bar/database
}}}

== 参考 ==

 * [[http://www.h2database.com/html/main.html|H2 Database Engine]]
 * [[http://homepage2.nifty.com/yoks/TechNote/H2/H2_MnFrm.htm]]
 * [[http://www.gs.sjts.co.jp/v3/tec/about_h2db.html|H2 Database Engineに関する技術・製品の概要]]
 * [[http://blog.mwsoft.jp/article/46492053.html|H2 Databaseを組込みモードで使ってみたメモ]]
 * [[http://d.hatena.ne.jp/sekom/20081201/p1|H2のデータ型とJavaのデータ型の対応]]
https://www.gwtcenter.com/h2-database

このページは以下に移動しました。

https://www.gwtcenter.com/h2-database