【Pure】HSQL database engine【Java】

このエントリーをはてなブックマークに追加
1名無しさん@お腹いっぱい。
100% pure Java なデータベース HSQL について語ってくれたまえ。

Javaアプリケーションのデータ格納用に、PostgreSQL や
MSDE をインストールするのはちょっと面倒くさい、
Jet(mdb)みたいにセットアップできるデータベースが欲しい、
そんなあなたに HSQL。

http://hsqldb.sourceforge.net/
2名無しさん@お腹いっぱい。:03/08/16 15:24 ID:???
少々大きなテーブルを作ろうとすると、すぐOutOfMemoryで落ちちゃう。
TEXTかCACHEDを使えってことなんだろうけど、この2つをどの観点で切り分けて使えば
いいのかイマイチ判断がつかない。「俺はこうしてる」ってのがあったらおながいします。
3名無しさん@お腹いっぱい。:03/08/16 18:26 ID:???
>>1嬉しいねー。漏れもこのDB好きなんだ。地味に盛り上げたいね、このスレ。

>>2そうなのか。いつもCACHEDなので気にしてなかったんだが。
10万件程度ならCACHEDだと全然問題ナッシングだったがなー。
JVMのメモリ割り当てを変えても駄目か?
4名無しさん@お腹いっぱい。:03/08/17 01:59 ID:???
>>3
漏れもこのDB結構気に入ってる。
JVMのオプション指定すればOKなんだけど、起動中に数十万単位でレコード数を
変えようとしてて、その時にエラーがでちゃったわけで。
#そもそもMEMORYテーブルでそういう使い方をしちゃダメなんだろうけど
テーブルの構造にもよるけど、オプション指定しなくても30万レコードくらいは
MEMORYテーブルに載ってくれる。レコード数が変わらない(所謂マスタ)ところ
にはMEMORYでそれ以外はCASHEDかTEXTとは思ってるんだけど、ドキュメントにも
「CASHEDはパフォーマンス落ちるからレコード数が多くなければMEMORYを使え」
とあったんで。
とりあえず、問題のテーブルはCASHEDにしてパフォーマンス見てみるよ。
53:03/08/18 00:19 ID:???
>>4
そもそもMEMORYテーブルってレコードを永続化できないから
普段は使ってないんだけど、それだけのデータを起動時に外部から
取り込んでいるってこと? あとshutdown時に外部に吐き出してるの?
この辺の運用の仕方、すごく興味あるなー。

レコードの消失防止と起動時の復帰さえ手軽に出来れば、
かなり無敵感強いDBだと思ってるのだけど。
64:03/08/19 23:12 ID:???
>>5
shutdown時に吐き出すってより、起動時にトランザクションログ(*.script)から
テーブルを作り直すという動作をしてるみたい。だからサイズがでかくなると、
起動も遅くなる。
7名無しさん@お腹いっぱい。:03/08/20 09:05 ID:???
>>6
なるほどIn-Memoryだとそういう動きをするのか。
CACHEDのリカバリと同じなんだな。
でもちゃんとそうやって復帰してくれるなら安心ではあるな。
8名無しさん@お腹いっぱい。:03/08/21 23:35 ID:???
HSQLって JDBC でしか接続できないのでしょうか。
ODBC ドライバとかあれば、試してみたいと思ったのですが。。
9名無しさん@お腹いっぱい。:03/08/22 08:16 ID:???
>>8
ODBCは直接は無理。海外だと有償のODBC-JDBCブリッジがあるらしいけど。
JDBCのType-1(JDBC-ODBCブリッジ)のちょうど逆だね。
ODBCから使えると本当に最高だと思うけど、仕方ないねー。
10名無しさん@お腹いっぱい。:03/08/24 12:19 ID:A8PFVsM7
>>6
逆に.scriptから復帰しないって方法はあるんかいのー?
別のDBのフロントキャッシュとしてだけ使うみたいな
ことが出来れば面白いと思うんだが。
11名無しさん@お腹いっぱい。:03/09/14 12:40 ID:???
>>10
URLをjdbc:hsqldb:.
で接続すれば、メモリ内だけですべてが完結する。
起動時にキャッシュするってのはありかもね。
12名無しさん@お腹いっぱい。:03/09/17 22:21 ID:???
>>11
なるほど完全にin-memoryモードで使うわけだね。

そういえばalpha_Oがリリースされてるね。
久々に活発になってきたようで嬉しい。
13名無しさん@お腹いっぱい。:03/09/18 08:17 ID:???
>>12
久々というほど活発だった時期があったとは思えんが(w
1すれ消費できるようになるなら、
それなりに認知されてきたってことなんだろうね。
2chが基準かよってきはするが。
14名無しさん@お腹いっぱい。:03/09/18 13:21 ID:T3nvntjU
そりゃまそうだけどさ(w
1.7.1のあと割と早く1.7.2系に取り組んで
ぽろぽろと出てたジャン。その頃は結構
ワクワクしてたんよ、漏れ(w

よーし頑張ってスレ消費するぞ〜(違
15名無しさん@お腹いっぱい。:03/09/18 13:33 ID:???
とか言ってたら、今alpha_Pが公開されたYO!
OのバグFix版らしい。
16名無しさん@お腹いっぱい。:03/09/18 23:11 ID:???
>>14
1.7.2の新機能を1つずつ紹介してよ。
スレ消費できるで。(w
17名無しさん@お腹いっぱい。:03/09/22 11:37 ID:???
大量データでテストしてたら、
index作っても件数増えると遅くなるのな。
意味ねー!
18名無しさん@お腹いっぱい。:03/09/22 18:26 ID:???
>>16

んじゃ、数日で1つずつくらいのペースで(w
CHECKPOINT DEFRAGの実装によって、シャットダウンしなくても
.dataファイルをデフラグできるようになった。
19名無しさん@お腹いっぱい。:03/09/23 01:06 ID:???
shutown compatとは、また値五蘊脱毛。
そーすをみなさいの決のに名rそうやけど名。
20名無しさん@お腹いっぱい。:03/09/23 11:34 ID:???
>>19それ読めないぞさすがに(w
21名無しさん@お腹いっぱい。:03/09/23 12:39 ID:???
HSQL を Windows で使っている人いる?
22名無しさん@お腹いっぱい。:03/09/24 00:38 ID:???
>>21
使ってるよ。
普通使うなら、Windowsやろ。
Linuxでつかうのは特別なケース。
Pure Javaだからプラットフォーム関係無いで。
23名無しさん@お腹いっぱい。:03/09/25 12:59 ID:???
>>21
漏れは開発時はWindowsだな。
本番はLinuxのことが多い。
24名無しさん@お腹いっぱい。:03/09/26 00:08 ID:???
>>23 本番って??? HSQL をユーザー納品してるの?
いずれは PostgreSQL, MySQL と同じ土俵にあがるのかな。
いまはそこまでの評価・評判・ユーザー数に達してないよね。。残念だけど。
25名無しさん@お腹いっぱい。:03/09/26 08:03 ID:???
>>24
HSQLを本番で使うのはさすがに無理だと思うが、
Accessを本番で使うやつもいるくらいだから、
ありなのかもしれん。
2623:03/09/26 11:13 ID:???
>>24-25
納品してるよ。別に本番ったって全部が全部
そんな規模のでかい話ばかりじゃないよね。
HSQLDBで済む程度のシステムだってあるさ。
うちはシステムの内容に応じて、
Oracle,PostgreSQL,HSQLDBを使い分けてる。
27名無しさん@お腹いっぱい。:03/09/26 23:06 ID:???
Alpha_Pリリースsage
28名無しさん@お腹いっぱい。:03/09/27 20:00 ID:???
Alpha_Qだった。どうも最近活発というよりも新しい奴でバグが出まくってる感じだな。

1.7.2の新機能つづき。
参照整合性制約に
ON {DELETE | UPDATE} {CASCADE | SET DEFAULT | SET NULL}]
が使えるようになった。
29名無しさん@お腹いっぱい。:03/09/30 12:50 ID:???
詳しい方教えてくだされ。
α-QでCHECKPOINTを実行すると、
.backupファイルの生成に時間がかかって
えらくパフォーマンスが低下してしまうぞよ。
何とかなりませんかね。
30NAME IS NULL:03/10/26 14:00 ID:???
alpha_Sが出てるね
31NAME IS NULL:03/10/26 18:40 ID:???
よーしパパ、HSQLをネイティブコンパイルしちゃうぞ〜。
32NAME IS NULL:03/10/27 08:19 ID:???
>>30
Zこえるとどうなるの。
Betaになるのか(w
33NAME IS NULL:03/10/27 11:17 ID:???
>>32どうなるんだろうねー。alpha_AAとかなのかな(w
いい加減Betaになってくれと思う今日この頃だなー。
最近妙に不安定だし。Mくらいのときのほうが安心できたよ。
>>31よーしパパ期待しちゃうぞ−(w
34NAME IS NULL:03/10/29 19:36 ID:S75h6IRs
データベースをCD-ROMに収めて使うことはできないのかなぁ・・・

ドキュメソトのAdvanced Topics辺りを見て、
Shutdown Compactして、*.propertiesをtrueに変えて
データベースをCD-Rに焼いたんだけど、アクセスすると、

java.sql.SQLException: The database is already in use by another process: org.hsqldb.NIOLockFile@d9aa8fd3[file =h:\test.lck, exists=false, locked=false, valid=false, fl =null]: java.io.FileNotFoundException: h:\test.lck
(このメディアは書き込み禁止になっています。)

ってな例外がでまつ。なんでだろー?
レコードが40万件位あるのでCACHED TABLEを使っているけど、
関係あるかな?

3534:03/10/29 19:40 ID:S75h6IRs
× *.propertiesをtrueに変えて
○ *.propertiesのreadonlyをtrueに変えて
3634:03/10/29 22:49 ID:S75h6IRs
hsqldb_1_7_2_ALPHA_T.zip を使っていたのが原因でした。
安定版(1.7.1)では発生しません。CVS版でも修正済みたいです。

昨日時点でSourceForgeに報告されてました。
[ 831711 ] .lck file created for read-only database
37あぼーん:あぼーん
あぼーん
38hsql:03/11/01 18:19 ID:RCfKS0Jk
このサイトのtestdb.java(サンプルプログラム)のコンパイル方法教えてください。
以下のエラーが出てしまいます。

Exception in thread "main" java.lang.NoClassDefFoundError: testdb (wrong name: t
estdb/testdb)

[サイト]
http://hsqldb.sourceforge.net/web/hsqlDocsFrame.html
39NAME IS NULL:03/11/01 22:40 ID:s0QICZbG
>>38
おそらくパッケージの問題。
"package"について正しく理解してる?

ソースの在処とコンパイルのコマンドラインと
実行時のコマンドラインを晒してミソ。
40NAME IS NULL:03/11/02 08:32 ID:???
>>39
サンプルとはいえ、クラス名を小文字で始めるとは、
なっとらん。
サンプルではない、JDBC関連もそうなんだけどね。
41hsql:03/11/02 21:55 ID:L48Xzafc
[サンプル]
http://hsqldb.sourceforge.net/web/hsqlDocsFrame.html

Simple Code Example  ← このサンプルですが、コンパイル方法教えて下さい。

classpathに、hsqldb.jar してもだめでした。
42NAME IS NULL:03/11/02 21:58 ID:L48Xzafc

java -classpath hsqldb.jar testdb.java
43NAME IS NULL:03/11/02 22:00 ID:L48Xzafc
接続先は、localhostです。
サンプルソースの変更が必要なら修正箇所も指摘して下さい。
その他、いいサンプルがあれば記述してもらえますか?
お願いします
44hsql:03/11/02 22:02 ID:L48Xzafc
接続先は、localhostです。
サンプルソースの変更が必要なら修正箇所も指摘して下さい。
その他、いいサンプルがあれば記述してもらえますか?
お願いします
45NAME IS NULL:03/11/02 22:47 ID:+w7YG6vg
>>42
コンパイルは javac でそ!

カレントディレクトリに testdbディレクトリを
つくってなー、その中にtestdb.javaを置いてな─、
javac -classpath hsqldb.jar testdb\testdb.java

実行は
javac -classpath hsqldb.jar;. testdb.testdb
だべ。(Windows用)

hsqldb.jarはカレントディレクトリにないとだめよ。

つーか、hsqldbの話題じゃないじゃん。
まずはJDKの使い方を勉強しる!
46hsql:03/11/03 09:02 ID:kWafL7rS

ありがとうございました。(神様)

47NAME IS NULL:03/11/03 16:11 ID:pc2PxWMG

hsqlで、コマンドベースでsql文流せますか?(スプリプト/シェル)

例)
 SQL Server (osqlと同じような機能)

48NAME IS NULL:03/11/03 16:23 ID:T4ks4co3
●●●2004年も被害者がでるのだろうか?●●●
http://sports2.2ch.net/test/read.cgi/kouhaku/1057943092/-100
行政機関、日本の全マスコミ、教育機関などによる、
個人に対する住居不法侵入からの盗聴、盗撮、24時間監視、
ストーカーで収集した個人情報を、
テレビ、新聞、出版物などで嫌がらせをしながら悪用している事実について、
>>1>>394までにまとめました。

2chのマスコミ板 http://society.2ch.net/mass/
●●●マスコミの盗聴、盗撮は許されるのか?●●●
で被害者の訴え、マスコミの隠蔽が、30スレまで続いています。
より多くの人に事実を知って貰うことが、
組織的、計画的な犯罪の刑事責任、民事責任を追及することにつながると考えています。
49NAME IS NULL:03/11/03 22:27 ID:???
>>47
DatabaseManagerのメニューから
File|OpenScript
では嫌か?
50NAME IS NULL:03/11/04 22:38 ID:vVoew7Yh
このサイトのScriptToolは使えるのでしょうか?
http://hsqldb.sourceforge.net/web/hsqlDocsFrame.html

コマンド
java -classpath .;hsqldb.jar;%CLASSPATH% org.hsqldb.util.ScriptTool

デフォルトで、st.sqlを読み込むようですが・・・
51NAME IS NULL:03/11/09 09:45 ID:+oHXMfSp
これって、なんか軽くてサイコーっすね。
ところで、ユーザはDBごとに作るしかないんでしょうか?
すいません。英語苦手なもので(^^;
いや、実際試せって話もあるんですが、どーも良く分からなくって。
52NAME IS NULL:03/11/09 10:45 ID:???
ユーザ作れるよ。以下ドキュメントより

CREATE USER username PASSWORD password [ADMIN] ;

Creates a new user or new administrator in this database. Empty password can be made using "".
Only an administrator do this.

See also: CONNECT, GRANT, REVOKE

そういえばWEB+DB PRESSのVol.17にHSQLDBの記事が出てたYO
53NAME IS NULL:03/11/09 11:26 ID:???
>>50
使えるのでしょうか?ってどゆこと?動かなかったの?
-script でスクリプトファイルの指定ができるね。
54NAME IS NULL:03/11/09 15:06 ID:+oHXMfSp
>52
なるほど、ありがとう。

実は、その雑誌に載ってるのを見て試してます。雑誌でもここで実運用で使われたという話が有るのを見て
心強いです。とりあえず、社内ツールの一つに使ってみようかと思ってます。
55NAME IS NULL:03/11/26 07:59 ID:???
alter tableでPRIMARY KEYは追加できないんだな。
作り直しかよ。
とりあえず、*.scriptを直接いじったがな。
56NAME IS NULL:03/11/27 07:49 ID:osNDTSLq
げげーそーだったんか。>55
使えるSQL確認しないといかんな。むーん。

しかし、これ扱いが楽でいいよね。
JDBC学習用の教材で使おうかとおもっとる。
57NAME IS NULL:03/12/17 15:17 ID:09dW1E6o
このHSQLってJ2EEサーバJBossにも含まれているんだね
58NAME IS NULL:03/12/23 23:19 ID:AY0jSFYa
色んな奴に含まれているねHSQLって
手軽だからいいね
59NAME IS NULL:04/01/03 02:01 ID:hMo7LGmt
1.7.2RC1きた!
60NAME IS NULL:04/01/03 04:18 ID:v2ltVVTF
キタ
61 :04/01/04 20:21 ID:XHsDwE5w
Kさん 好循環  Aさん 悪循環  
 (健康体)  (喘息)

1.(天国・霊界が喘息であるかないかを決める)
2.K 喘息でない人 A 喘息の人は
は体力がある    体力がなくなる

3.K        A 行動力、五感(嗅覚)が鈍り感性が変化する。
4.K&A 天国・霊界は異常な感性の人間は本来人に迷惑をかけ
るから外に出てはいけないと思っている。

5.K 変化なし   A アトピーになる
6.K 正常な感性  A 外に出なくなりさらに異常な感性になる。
7.K 正常な人間   A 異常な人間(レッテル)
8.K&A 死  9.K&A      来世
10.K&A 天国・霊界は異常な人間は人に迷惑をかけるので行動
を抑制する必要があると思っている。

11.K&A 天国・霊界が喘息であるかないかを決める 12.K 喘息でない  A 喘息である
13.K&A    1.に戻る

これは事実。広めようぜ
解決法:寝て起きて、やな気分でも、続けるけること。
体力をつけると感覚が正常に戻り、
アトピーも快癒に向かう。 目安としてグランドを10週くらい。
あとはウォーキング 2.3時間を目安にウインドーショッピングや本屋めぐり
鼻に変な違和感があったり、気分の悪い時は、
お腹の中の空気を出さなくてはならない。
口をしっかり閉じたまま、口の中に空間を作り、
口の中にできた空気を吐き出す。
これを100回から200回。
62 ◆IAmBakAKu2 :04/01/16 23:09 ID:???
test
63NAME IS NULL:04/01/30 14:05 ID:we9a2zhw
保守age
64NAME IS NULL:04/02/20 13:18 ID:pJNNKEPm
hsqldb Beginners Guideによると、Server Engineで起動した場合、

>Shut down with Interrupt signal, or "shutdown" command with either tool.

とのことですが、INTシグナルを送っても無反応です。
TERMシグナルやHUPシグナルを送ると停止するのですが、
このときはログに何も吐かれてないため、強制終了されてるような気がします。

どなたかシグナルを送って安全に停止させる方法をご存知ないですか?
65NAME IS NULL:04/02/25 22:56 ID:creIg8CF
rc2
6664:04/03/06 22:54 ID:???
調べてみたら、どこにもaddShutdownHook()が無かった。
INTシグナルで止まるってのは、Beginners Guideの記述ミスか内容が古かったからかな。
ラッパーを作ってshutdownを発行するようにしますた。
67NAME IS NULL:04/03/08 16:01 ID:MTWZ1Jgw
68NAME IS NULL:04/03/14 17:42 ID:mn/LcM3T
1.7.2rc3が出たage
69NAME IS NULL:04/04/06 21:46 ID:GXxkLk8T
ほしゅ
70NAME IS NULL:04/04/07 21:13 ID:???
RC5でてるね
71NAME IS NULL:04/04/26 23:38 ID:VQfXvfRm
IBMのeclipseプラグインって自分でコンパイルせなあかんの?
バイナリどっかにないすか?
72NAME IS NULL:04/04/27 02:36 ID:???
さっき寝ぼけながら初インストールしてみたんですけど・・・・

まさか数十分でテーブル作ってJDBC繋げる所までできるとは(かなり適当臭いが)。
こんな簡単だったんですね。mysqlいらんわ。
つうかJ2SDKに標準添付して欲しいくらいだ。

で、使用上のコツやら役立ちサイトやらを皆さんが↓に書いてくれるのを期待して
 _∧∧__   / ̄ ̄ ̄ ̄
 |( ゚д゚)| < 寝る!
 |\⌒~\  \____
 \ |⌒⌒|
73HSQL:04/04/27 20:25 ID:fES63bVJ
ここのグループウェア製品は、HSQLを使っていまつ。
http://school.jgroove.net
評価版がダウンロードできまつ。

こういうふうに、組み込んで配布するには、いいかも。
74NAME IS NULL:04/04/30 22:03 ID:???
>>72
> つうかJ2SDKに標準添付して欲しいくらいだ。
同感だなー
ODBCが使えたら文句なしなんだけどな
75NAME IS NULL:04/05/14 23:36 ID:/nzbV1K7
1.7.2 RC5 で、Server -? が動かないのは私だけ?
1.7.1 ではヘルプメッセージが出たのに、RC5 ではそのまま起動してしまう。
76NAME IS NULL:04/05/20 17:19 ID:fuRs8H4J
JAVA
77NAME IS NULL:04/05/20 17:20 ID:fuRs8H4J
ジャバ ショックウェブはどこでダウンロードするの?
78NAME IS NULL:04/05/31 14:45 ID:ImmYcUYC
Final Release Candidate: 1.7.2 Release Candidate 6 (RC6a) (17MAY2004)
age.
79NAME IS NULL:04/06/01 17:40 ID:???
rc6bが出たわけだが
80NAME IS NULL:04/06/02 12:45 ID:???
SELECT FOR UPDATE はありませんかそうですか

ま、そういうところを削って高速化してるんだろうからしょうがないか。
81NAME IS NULL:04/06/06 15:02 ID:Er4Up2UC
別に高速化のために削ってるわけではなくて
実装が追いついてないだけだがな。
あのインデックスの実装はどうにかならんかしかし。
82NAME IS NULL:04/06/09 22:01 ID:???
そんなに変な実装かい?
83NAME IS NULL:04/06/10 18:22 ID:???
Vectorで実装されててだからB-treeみたいになってないんだよ。
だから後ろのほうのレコードを引いてくるのに時間がかかる。
100万件くらい放り込んでやると目立ってくる。DESCは互換性だけで
何の効果も出さないって書いてるしな。高速化のためにインデックスを使おうと
するとイライラしてくるよ。気に入らないのはそれだけだなHSQLDBは。
84NAME IS NULL:04/06/20 11:40 ID:???
rc6cが出たわけだが
85NAME IS NULL:04/06/20 23:14 ID:VdeUrfdH
すみませんおききしたいことがあります
QueryToolクラスを使ってブラウザからHSQLを操作してるんですけど
起動時にどうしてもplaceテーブルだのCustomerテーブルだの
意図しないテーブルが作成されてご丁寧にデータまで挿入されます。

これを回避する設定方法があるのでしょうか。
86NAME IS NULL:04/06/21 00:02 ID:gHOZk9SV
85です。
すいません解決しました
テストモードで起動してたのがいけなかったみたいですね・・
87NAME IS NULL:04/07/04 19:10 ID:???
rc6dが出たわけだが
88NAME IS NULL:04/07/20 19:05 ID:???
藻前様方、1.7.2がでましたよ。
DL数が0なんてはじめて見ますた。

……みんな、ここ、見てるよな?
89NAME IS NULL:04/07/20 19:40 ID:???
>>88
1get!!したの?

プロジェクトのホームページはなぜかRC6dまでしか
書いてないね。

http://hsqldb.sourceforge.net/
90NAME IS NULL:04/07/21 08:35 ID:???
バッチ処理でカウンタ処理されるらしいのでしばらく0だったりする
hsqlの場合は特に目立つけどな
91NAME IS NULL:04/08/03 07:47 ID:X/RIdBny
お、でたか。
どれどれー、落として評価すべかぁ。
92NAME IS NULL:04/08/03 10:02 ID:???
米IBM、JavaデータベースのCloudscapeをオープンソースに
ttp://www.itmedia.co.jp/enterprise/articles/0408/02/news030.html
93NAME IS NULL:04/08/07 00:09 ID:???
>>92
Derbyは2MBほどあるってことなので
HSQLDBとは棲み分けられるんじゃないかな
と思ってたりする
94NAME IS NULL:04/08/21 22:22 ID:???
保守
95NAME IS NULL:04/09/02 00:26 ID:E31ifSsd
1.7.2以降、どうもメモリを馬鹿食いするようになった気がする。
96NAME IS NULL:04/09/06 03:55 ID:???
>>95
そうなの? ソースコードを負ってみないといかんかな。
97NAME IS NULL:04/09/06 22:11 ID:???
>>96
サーバモードで立ち上げて、プロセスの太り方を眺めてるだけでも、違う気がする。
98NAME IS NULL:04/09/08 00:51 ID:???
一度参照したデータをメモリに持ちっぱなしにするみたいなんだけど、どうすれば消えるか知りませんか?
99NAME IS NULL:04/09/09 20:27 ID:???
>>98
CREATE CACHED TABLE
100NAME IS NULL:04/09/09 23:02 ID:???
>>99
いや、それじゃなくて
CACHEDテーブルから一度SELECTしたデータを、
シャットダウンするまでキャッシュとしてVMのメモリに持ってるみたいなんだよ。
コミットとかチェックポイントしても解放しないし・・・

ひょっとすると>>95に関係あるかもしれない
101NAME IS NULL:04/09/10 22:44:44 ID:???
>>100
Session#evict で開放されるはずなんだけど、手元のプログラムだと、どんどんプロセスが太るんだよなあ。
昔と違ってOutOfMemoryException連発になってしまった…orz
102NAME IS NULL:04/09/22 18:40:22 ID:5eEYyWk6
それまずいやん。外部結合使いたいのに。
誰かメールすれ。
103NAME IS NULL:04/09/28 18:14:38 ID:???
HSQLDBでテーブルの有無を確認するにはどういう方法があるでしょうか?
104103:04/09/28 18:21:21 ID:???
DROP TABLE文には IF EXISTS オプションが指定できるのに、
CREATE文には使えないのですね。うーむ。
105NAME IS NULL:04/09/29 16:44:34 ID:???
>>103
SELECT * FROM SYSTEM_TABLES
WHERE TABLE_NAME = '確認したいテーブル名'
106103:04/09/29 17:04:23 ID:???
>>105
おお、確認できました。
ありがとうございました。
107NAME IS NULL:04/09/30 16:29:23 ID:???
最近使い始めたんだけど…
LIMIT句の位置がきもいね。
108NAME IS NULL:04/10/28 07:34:37 ID:7oFN8QGu
環境:WinXPPro、Ver7.12
TEXTテーブル使おうとしてるんだが、日本語の文字化けがひどい。
エンコード指定して読み書きできないだろうか?
夕べから探してるんだが、見つからぬ……。
109108:04/10/28 18:02:27 ID:???
自己解決しました。
マニュアルにちゃんと書いてるじゃんorz
110NAME IS NULL:04/11/11 22:34:07 ID:tdqjraOS
メモリーモードでも.scriptにデータ書くの?
111NAME IS NULL:04/11/11 23:12:12 ID:???
どこに書くというのさ。
112NAME IS NULL:04/11/11 23:52:02 ID:???
メモリでは?
113NAME IS NULL:04/11/15 20:24:52 ID:???
114NAME IS NULL:04/11/17 01:47:40 ID:???
1.7.2.8が出たね。
changelistより抜粋(日付を間違っているみたいね)
---------------------------------------------------
2004.11.25 UPDATED RELEASE 1.7.2.8

Fixed bug LIMIT and TOP with UNION
Fixed bug running Database Manager as applet
Enhancement to allow a table with a label used in DELETE and UPDATE
Enhancement to reduce memory use when restoring long log with too many connections
Enhancement to persist values set by SET LOGSIZE
Minor internal enhancements and refactoring
115NAME IS NULL:04/11/17 02:39:27 ID:Gq9nAr9b
1.7.8.2
116NAME IS NULL:04/11/17 02:39:54 ID:Gq9nAr9b
間違えた。リリースおめ。
117NAME IS NULL:04/11/17 02:40:52 ID:Gq9nAr9b
cloudscapeの方はあんま報告ないねぇ。
118NAME IS NULL:04/11/19 00:21:31 ID:zEwlut0u
最近使っている。手軽でよい。
119NAME IS NULL:04/11/19 01:17:00 ID:???
cloudscapeのほう?
120118:04/11/20 00:39:13 ID:???
>>119
hsqlのほう。
121NAME IS NULL:04/11/20 01:09:46 ID:???
>>120
ということは、「流れ嫁」ということだな。
122NAME IS NULL:04/11/20 07:49:16 ID:???
後期から授業で使ってるよ。
まぁちょいと癖はあるが、Accessばかり触らせるよりよほど良いし、重宝してる。
校内のツールもこれ使おうかと画策中。
123NAME IS NULL:04/11/27 18:10:09 ID:???
explain for XXX の結果をDBEditから見れない模様。
excel的なGUIで結果取得できる系のツールでは見れないものか。
124NAME IS NULL:04/11/27 21:21:57 ID:Rl3008nY
JDBCに接続できるGUIツールないすか?
DBEdit以外
125NAME IS NULL:04/11/27 23:10:01 ID:???
ttp://eclipsewiki.net/eclipse/?DB%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3
QuantumDatabase、すごく具合良いよ。
126NAME IS NULL:04/11/28 02:09:28 ID:???
Derby期待しちょるでよ。
127NAME IS NULL:04/11/28 13:36:23 ID:Cjr1+7wn
hsqldb 1.7.2.9が出てましたよ。
128NAME IS NULL:04/11/28 14:06:05 ID:???
>>127
changelistに記載がないけど、ざっくり眺めると import文を"*"使わないようにしたりといった
スタイルの変更?みたいなのが目につくね。自作プログラムで使ってみると、若干メモリ使用量が
減ったような気がします。
129NAME IS NULL:04/11/29 10:26:15 ID:???
hsqldbで、

ORACLE でいう SELECT SYSDATE FROM DUALみたいなコネクションのヘルスチェックに
使えるSQLはないものでしょうか。
130NAME IS NULL:04/11/30 02:18:48 ID:???
どっかにインデックスにハッシュ表じゃなくてリストを使っているというカキコが
あったけど、アーキテクチャ解説のPDFではハッシュ表使っている、と
書いてある気がした。頭よい人よ、本当のことを教えておくれ。
131NAME IS NULL:04/12/01 19:51:36 ID:???
>>129
システム表からなんか取れるんではないでしょうか。だめかな?
132NAME IS NULL:04/12/01 19:52:37 ID:???
>>128
import * でメモリ量増えるの?
コンパイル時に適当に解決してくれないのかな。
133NAME IS NULL:04/12/01 22:38:31 ID:???
>>132
さすがにそんなことはないと思う。コンパイル時に解決してるだろうし。
別の理由があると思うよ。ざっくり眺めて目についたとしか書いてないし。
134NAME IS NULL:04/12/01 22:46:36 ID:???
いわゆる今のコードの流行だよ
どういったクラスを使っているかを一目でわからせるためのね
135NAME IS NULL:04/12/02 01:53:18 ID:???
>>132
そんな、importの意味をわかってない質問するとはずかしいよ。
136NAME IS NULL:04/12/02 20:26:10 ID:???
>>135
importの意味を述べよ。ググるの禁止。
137NAME IS NULL:04/12/02 20:48:37 ID:???
>>136
ソース中で、fqnではなくクラス名だけでクラスを示せるようになる。
138NAME IS NULL:04/12/11 14:28:10 ID:???
HSQLDB1.7.3キタ━━━━(゚∀゚)━━━━ッ!!
139NAME IS NULL:04/12/11 14:41:19 ID:???
1.7.2は大幅に改良されたが、今回の目玉はなんだろう
英語読めないとまったくわからねぇ
140NAME IS NULL:04/12/12 02:52:36 ID:???
>>139
読めよ。読む気がないだけだろ?
141NAME IS NULL:04/12/12 12:57:50 ID:???
よめないんだよ
142NAME IS NULL:04/12/12 18:12:21 ID:???
>>141
それを読む気がないというんだって。
英日辞書は日本語で書いてるし、1万から20万ぐらいで翻訳ソフトだって売ってるし。
やる気があるなら何とでもなる。
143NAME IS NULL:04/12/12 18:20:58 ID:???
翻訳かけてもまともな日本語にならんよ、技術系は
それに金がないやつはどうすれば
144NAME IS NULL:04/12/12 19:54:13 ID:???
>>143
excite
あとは中学生レベルの英語がわかれば読める。
145NAME IS NULL:04/12/13 21:54:00 ID:???
>>143
> 翻訳かけてもまともな日本語にならんよ、技術系は

 斜め読みには十分なレベルかと

> それに金がないやつはどうすれば

http://dic.yahoo.co.jp/bin/dsearch?p=%BC%AD%BD%F1&stype=0&dtype=1

146NAME IS NULL:04/12/13 23:45:39 ID:???
金がないなら辞書を引けばいいのに....
147146:04/12/13 23:46:23 ID:???
すまんかった、たった一つ前で既出だったか。
148NAME IS NULL:04/12/16 15:53:11 ID:???
HSQLDBってJDBC1だけか・・・
149NAME IS NULL:04/12/16 22:13:09 ID:???
それじゃ事実上使えないに等しいといってるようなもんじゃね?
150NAME IS NULL:04/12/16 22:56:47 ID:???
SQL直書きなら大丈夫だが
moveToInsertRowとかJDBC2の機能ははじかれるね
小規模ならいいとはいえ多少弱いな
151NAME IS NULL:04/12/31 13:57:54 ID:???
hibernateする分にはOracleもHSQLDBも変わりない。
152NAME IS NULL:05/01/14 22:56:06 ID:???
Oracle の rownum や PostgreSQL の limit に相応するの無いっすかね?
hibernate 使わずに Spring の JDBC Template でやっちまおうと思ってるんですが。
153NAME IS NULL:05/01/16 09:31:50 ID:???
>>152
>>107
RTFM
154NAME IS NULL:05/01/16 10:34:40 ID:???
>153
思いっきり見落としてた。ありがとう。
ttp://hsqldb.sourceforge.net/doc/guide/ch08.html#select-section
LIMIT n m
155NAME IS NULL:05/01/30 01:04:05 ID:htosOV6a
質問なのですが、
日付の引き算はどうしたらできるのでしょうか。考えても思いつかず。お願いします。
156NAME IS NULL:05/01/30 01:35:26 ID:???
それは「HSQLDBではどうやるんですか?」という質問だと理解していいんだな?
157NAME IS NULL:05/01/30 12:54:15 ID:D3mj7bnG
>>156
そうです。わかりづらい書き込みですみません。
158NAME IS NULL:05/01/30 15:43:20 ID:???
>>157
ならば、 153が示したHTMLの"Built-in Functions and Stored Procedures"辺りに
答えがあるだろう?ちゃんと読んだか?
159NAME IS NULL:05/01/30 15:52:07 ID:???
>>157
じゃあDATEDIFF( string, date1, date2)だな。

date1, date2に比較したい日付列、stringは比較する単位を指定する。

'ms'='millisecond', 'ss'='second','mi'='minute',
'hh'='hour', 'dd'='day', 'mm'='month', 'yy' = 'year'が指定できるらしい。

TESTDATE( pk INTEGER, start DATE, end DATE)

というテーブルがあって、pkが1、startが'2005-01-20'、endが'2005-01-29'だとしたら、
SELECT DATEDIFF( 'dd', end, start) AS diff from TESTDATE where pk = 1で
diffには-9が入る。
160NAME IS NULL:05/03/13 13:20:03 ID:???
保守。
161NAME IS NULL:2005/04/13(水) 19:23:09 ID:???
IDENTITYが最大値に到達するとどうなるんでしょうか?
意味からいってサイクリックに採番するわけにもいかないし
エラー発生とかでしょうか。
162NAME IS NULL:2005/04/23(土) 12:48:33 ID:???
text table で、update 繰り返すと .data ファイルに隙間(空白)がどんどん出来ていくのは仕様ですか?
163NAME IS NULL:2005/05/06(金) 22:59:19 ID:???
SHUTDOWN COMPACT はしたかい?
164NAME IS NULL:2005/05/11(水) 18:10:38 ID:???
Memory-Only(URLがjdbc:hsqldb:mem:xxx)でSEQUENCE作ると、NEXT VALUE FOR が毎回0を返すんだが・・・
In-Process(URLがjdbc:hsqldb:file:xxx) でデータベース開いた場合はうまくいく。なぜ?

hsqldb-1.7.2.7と1.7.3.3で確認した。うちだけ?何か間違えた?
165164:2005/05/12(木) 09:37:41 ID:???
自己解決。SELECT NEXT VALUE FOR XXX FROM の返す結果が0件だったので
NEXT VALUE FORが評価されてなかった。対象の表が自作のテーブルだったんだが、
ここにレコードがなかった。
ドキュメントには「SYSTEM_SEQUENCES 使え」って書いてあるね・・・お騒がせしました。
166NAME IS NULL:2005/06/14(火) 23:33:33 ID:Yb6F6iob
google で hsql を検索すると、このスレが先頭に来る。
いやそんなことはどうでもいい。

「もしかして: mysql」ってなんだ(゚Д゚)ゴルァ
167NAME IS NULL:2005/06/19(日) 02:24:23 ID:???
hsqldb で検索するといいじゃないかな
168HYPER DB!:2005/06/28(火) 19:46:34 ID:FyvKDDrO
皆さん、HSQLのバックアップ処理はどうしていますか?

MySQLのADMINみたいなプログラムはあるんでしょうか?
MySQLADMINだと時間指定すれば勝手にバックアップ取ってくれるし、
初心者でも簡単に使えるデーターべすですね。

HSQLの評価は凄く高いですけど、管理が面倒だとちょと・・・
みなさんどうされていますか?
169NAME IS NULL:2005/06/28(火) 22:54:25 ID:???
>>168
使ってみた?
使ってみたのならそういう感想はでないとおもうんだが
170NAME IS NULL:2005/07/07(木) 01:15:04 ID:a1/Yzld+
1.8.0age
171168:2005/07/11(月) 13:55:56 ID:AujpvUAs

>>169

はい、ダウンロードして使ってみました。最新版の1.8です。

やはり、MySQLの管理プログラムに値するものは付属していませんね。
AWT版とSWING版のSQL文入力コンソールがあるだけで、
「午前4:00に、テーブルAのデーターを全部バックアップせよ」なんて
できないです。すこしがっかりです。
172NAME IS NULL:2005/07/11(月) 21:06:06 ID:???
MySQLだって単体には管理ツールついてこんし
組み込みDBという扱いならどういうものかわかるとおもわれ
173NAME IS NULL:2005/07/12(火) 00:14:38 ID:???
HSQLDBのバックアップなんて、ディレクトリごとコピっとけば終わりじゃないの?
174NAME IS NULL:2005/07/12(火) 00:50:45 ID:???
ディレクトリというかさらに細かいところを見ていけばもっとシンプルだけどな
どっちにしろあれほどシンプルな格納の仕方はないな
ログそのものがデータベース
175168:2005/07/14(木) 14:39:21 ID:7Um6zVOb
>>173-174
ちょっと興味がありますので、詳しく教えてくださいませんでしょうか。
さらに細かいところとはつまりどういうことでしょうか。

MYSQLのバックアップだと、SQL文がずらーと書かれたファイル1つで
バックアップとリストアができます。

HSQLをJBOSSと使いたいのですが、バックアップが簡単にできないと
困っています。どうか、どなたかご指導ください。

宜しくお願い致します。
176NAME IS NULL:2005/07/14(木) 15:09:23 ID:???
HSQLDBはJBOSS自身もつかってたような

本当にHSQLDB使ってみたの?
ならバックアップがどうのこうのって話は出てこないと思うんだが
177NAME IS NULL:2005/07/14(木) 15:10:27 ID:???
もうひとつ追加

JBOSSで使うのはいいけどサーブレットで使う場合はアプリ側で排他しないとダメだぞ

いわゆるクライアントサーバーのDBじゃないからね
178168:2005/07/14(木) 20:08:11 ID:7Um6zVOb
>>177
サーバーとして使えます。
常時作動させて、それでバックアップを午前の4時に自動的に取るバッチ処理
をしたいのですが、できません。

やっぱり、HSQLを本番稼動させている方は少ないみたいですね。
あきらめようかな。ここのどなたも使ってないってことは実績が無いと
みていいともいます。
179NAME IS NULL:2005/07/14(木) 20:10:17 ID:???
サーバーとして使えるって?
排他制御がないのにどうやって?
あくまでも接続方法としてTCPIPでも可能ってだけだよ
180NAME IS NULL:2005/07/14(木) 20:11:56 ID:???
実績は豊富にある
DBの名前自体大きく変わったからね

まぁ組み込みDBってのは表に出てくることなく裏で動いてるものだよ

HSQLDBはサブクエリーも使えるしスタンドアロンDBとしては優秀
Access(JET)よりちょっと上ってところだな
181NAME IS NULL:2005/07/14(木) 23:56:01 ID:???
>179
JBOSSを(J2EE)サーバとして使ってるって事でしょ。

>178
cronなり何なりでファイルをコピーするだけでいいと思うのだが、
「できません」ってどういう事?
できない状況が考えられないので何度も「本当に使ってみたの?」と
言われているんだと思う。

商用でも使われていると思うよ。うちはスタンドアロンのGUIアプリに
組み込んで使った。VB+Accessみたいに簡単にできちゃうのがgood
182NAME IS NULL:2005/07/14(木) 23:58:30 ID:???
だからsunはjdkにバンドルしろってばさ。
183NAME IS NULL:2005/07/15(金) 00:44:24 ID:???
>>175
なんか何が疑問なのかさっぱりわからんのだが....

HSQLDBを起動して使い始めると、三つのファイルができる。たとえばDB名がTestDBなら、
TestDB.script、TestDB.log, TestDB.propertiesの三つだ。基本的には、起動コマンドを打った
ディレクトリにできる。

このうち「.script」がSQLログ。こいつがあれば復旧可能だ。
完全バックアップするにしても、三つのファイルがあるディレクトリを丸ごとコピーしとけば終わり
だろ?という話なんだけど?
184NAME IS NULL:2005/07/15(金) 00:53:49 ID:???
うちもスタンドアロンアプリで組み込んで使ったよ
これは便利だ
185NAME IS NULL:2005/07/15(金) 09:56:44 ID:???
うちも同じことやりますた。(GUIアプリ)
in-process で使えるRDBだからすごく楽ですよね。
画面の表示内容やら、いろいろなものを保存してます。
独自ファイルで実装してたらきっと泣いてたと思う。

バックアップもファイルコピーして終了だし。素晴らすぃ。
186NAME IS NULL:2005/07/15(金) 19:38:52 ID:???
ダーティリードありとドキュメントに書いてあるような気がするんだけど、皆様は排他ってどうしてます?

やっぱアプリ側で楽観的ロック?
187NAME IS NULL:2005/07/15(金) 20:17:49 ID:???
排他機能がすっぽりおちてる以上アプリ側でやるしかないだろ
組み込みってそういうもんだと思ってるから別になんともおもわんな
自前でストレージエンジン作るのに比べたら・・・
188NAME IS NULL:2005/07/18(月) 01:26:19 ID:cvkXJZ10
Apache Licence2.0というのは掻い摘んで言うとどんなライセンスなのでしょうか?
189NAME IS NULL:2005/07/18(月) 03:11:50 ID:???
このソフト使ってるよーとか、その組み込んだソフト自体のバグの責任はとらねーよとか
そういう明示が必要
190NAME IS NULL:2005/07/18(月) 10:07:57 ID:???
ソース公開の義務はないのですね。
あいがとう。
191NAME IS NULL:2005/07/18(月) 19:22:08 ID:???
なんだなんだ、しばらく見ないうちに、自分でやってみたり調べもしない香具師が増えたのか?
192& ◆tNtHsziLno :2005/07/20(水) 14:27:42 ID:HF4pEmJc
みなさん、ご指導どうもありがとうございます。

バックアップはその三つをCRONすればいいだけなのですか。
恥ずかしながら知りませんでした。

排他処理とは、つまりトランザクション処理のことですね。
ファントムだとか、そりゃ色々あってややこしいですが、
アップサーバーに処理させます。

やっぱり、HSQLのファンは多いですね。嬉しいです。
またお話しさせてください。最新版のレポートでもさせて頂きます。
193NAME IS NULL:2005/07/20(水) 14:43:52 ID:???
>>192
お先真っ暗なJavaだけどがんばってね。
194NAME IS NULL:2005/07/20(水) 20:11:52 ID:???
>>193
ここは死滅スレじゃないぞ
195NAME IS NULL:2005/07/20(水) 23:05:28 ID:???
>>192

排他要るならderbyって手も。速度は知らん。jarサイズはHSQLDBよりはデカい。
196NAME IS NULL:2005/07/20(水) 23:14:59 ID:???
組み込み用途のDBなんでマルチユーザーとは使い方ちがうからな

複数のスレッドからのアクセスで排他制御が必要なら最大セッション数1の
コネクションプールみたいにしてやればいいだけだが、それならそもそもDBの選択を誤ってるとしか思えん
197NAME IS NULL:2005/07/21(木) 00:43:46 ID:???
198NAME IS NULL:2005/07/21(木) 02:37:23 ID:???
SQLiteとこっちどっち使おうか迷う。
JNIらなくていい分こっちのが楽なんだろうけど。
199NAME IS NULL:2005/07/30(土) 09:27:10 ID:???
1.8落としてみたんだけど
標準でdataディレクトリが無いのは何故?
あんなプチ嫌がらせを受けるとは思いもしなかったw
200NAME IS NULL:2005/07/30(土) 09:34:36 ID:???
>>199
HSQLDBがどういうものかわかってないのか
201NAME IS NULL:2005/07/30(土) 10:27:29 ID:???
>>200
demoディレクトリがdataディレクトリを参照してるんですがそれが何か?
202NAME IS NULL:2005/07/30(土) 11:24:22 ID:???
dataなんて自動生成されるだろ?
203NAME IS NULL:2005/07/30(土) 15:25:11 ID:???
同じ実行ファイルを連続して起動すると(同時実行ではない)
The database is already in use by another process
このようなSQLExceptionが発生するのですが、何が原因なのでしょうか?

memモードだとこの現象は起きず
fileモードだと発生するようです。
204NAME IS NULL:2005/07/30(土) 16:03:04 ID:???
既にDBが使用されているからです
205NAME IS NULL:2005/07/30(土) 16:05:20 ID:???
(同時実行ではない) って書いてるじゃん。
rs, stmt, connと全てcloseしても起きてるから何がなんだか。
206NAME IS NULL:2005/07/30(土) 18:46:29 ID:???
コネクションプーリングしていたとか
207NAME IS NULL:2005/07/30(土) 19:29:57 ID:???
OSのファイルロックが外れるのが遅いとかの理由かな?
208NAME IS NULL:2005/07/31(日) 11:21:30 ID:???
>>203
1.7.3からshutdownコマンド発行しないと.rockファイルが消えなくて、
同時実行とみなされちゃうように仕様が変わったみたいだけど、
それと関係あるかな?
shutdownコマンド発行するか、手動で.rockファイルを消せば、
同時起動だって怒られない。
209NAME IS NULL:2005/07/31(日) 11:30:41 ID:???
>>208
すばらしい!直った。
210NAME IS NULL:2005/08/01(月) 21:18:28 ID:???
するってーとshutdown=falseで接続して
最後にshutdownせずにアプリを落とすと、次回から
.lockファイルを消してからじゃないと接続できないってか?

なんか恐ろしく意味の無い仕様な気がする。
最近のバージョンはlockファイルの開放妙に遅いし。
211NAME IS NULL:2005/08/01(月) 21:26:53 ID:???
lockする以外の恩恵をshutdownで開放してるんだろうか?
closeの前にdisposeが必要な仕様ってのも理解できない
ってかそんな仕様お目にかかったこと無い
212NAME IS NULL:2005/08/01(月) 21:28:28 ID:???
組み込みDBなんだからアプリが起動中はつかみっぱなしで問題ないということで
あまりテストはされてない予感

実際あまり問題はないけどな
213NAME IS NULL:2005/08/02(火) 10:08:23 ID:???
shutdown=trueでもアプリが予期せず落ちると、
たまにlockファイルを残す場合があるな。 ちょっと困る。
ドライバの実装による問題なのかもしれんが、なんとかしてもらいたいところ。
214NAME IS NULL:2005/08/02(火) 17:44:28 ID:???
プロセスが死んでもつかみっぱなしってWindowsならよくあるな
215名無しさん@そうだ選挙に行こう:2005/09/10(土) 17:22:42 ID:???
HSQLDBを勉強したいのですが、日本語マニュアルとか日本語の
解説本とかがあるのでしょうか。amazonで調べてみましたが、
HSQLDBがテーマの本はありませんでした。

いろんなWebページを読みふけるのもいいのですが、それだと
知識が断片的になりそうでこわいです。
216名無しさん@そうだ選挙に行こう:2005/09/10(土) 21:30:12 ID:???
>>215
一番いいのはHSQLDBのドキュメント。
日本語リソースは…期待しない方がいい。
一度WEB+DB PRESSかなんかで見たことがあるだけ。
217NAME IS NULL:2005/10/08(土) 20:10:27 ID:z5mF1uXf
ApacheのDerbyスレが無いけど、建てていいんかしらん?
218NAME IS NULL:2005/10/09(日) 03:13:20 ID:???
>>217
ぜひお願いします。
テンプレでCloudscapeのフリー版でDB2互換であり、
Cloudscapeの日本語マニュアルが使えると説明すると
Derbyユーザを増やすのに役立つとおもいます。

The Apache Derby Project
http://db.apache.org/derby/
IBM Cloudscape インフォメーション・センター
http://publib.boulder.ibm.com/infocenter/cldscp10/index.jsp
Publications home (CloudscapeマニュアルPDF版30冊)
(マニュアル検索をクリック、キーワードCloudscape、表示結果数100で検索)
http://www.elink.ibmlink.ibm.com/puc/jsp/index.jsp?country=J1&language=JPN
Cloudscapeと3つの「C」
http://www-6.ibm.com/jp/developerworks/ysl/j_ysl-cloud.html
IBM Cloudscape、Apache Derbyについて
http://timescape.jugem.jp/
Unofficial DB2 BLOG
http://db2.jugem.cc/

IBM DB2 スレ (関連スレ)
http://pc8.2ch.net/test/read.cgi/db/1057170768/
219NAME IS NULL:2005/10/09(日) 04:18:07 ID:???
Derbyの最新バージョンは10.1.1.0、対応するCloudscapeのバージョンは10.1です。

Derby 10.1.1.0公開 - Apache Incubatorから卒業
http://pcweb.mycom.co.jp/news/2005/08/05/011.html
Cloudscape 10.1
http://db2.jugem.cc/?eid=526

マニュアル30冊と書きましたが、最新版用マニュアルは7冊ですね。

Publications home (CloudscapeマニュアルPDF版)
(マニュアル検索をクリック、キーワードCloudscape V10.1で検索)
http://www.elink.ibmlink.ibm.com/puc/jsp/index.jsp?country=J1&language=JPN

IBM Cloudscape 概説およびインストール V10.1
http://publibfp.boulder.ibm.com/epubs/pdf/d8863601.pdf
IBM Cloudscape 開発者ガイド V10.1
http://publibfp.boulder.ibm.com/epubs/pdf/d8863611.pdf
IBM Cloudscape リファレンス・マニュアル V10.1
http://publibfp.boulder.ibm.com/epubs/pdf/d8863621.pdf
IBM Cloudscape チューニング・ガイド V10.1
http://publibfp.boulder.ibm.com/epubs/pdf/d8863631.pdf
IBM Cloudscape ツールおよびユーティリティー・ガイド V10.1
http://publibfp.boulder.ibm.com/epubs/pdf/d8863641.pdf
IBM Cloudscape サーバーおよび管理ガイド V10.1
http://publibfp.boulder.ibm.com/epubs/pdf/d8863651.pdf
IBM Cloudscape V10.1 リリース・ノート
http://publibfp.boulder.ibm.com/epubs/pdf/d8863661.pdf
220NAME IS NULL:2005/10/09(日) 04:31:24 ID:FOVesS3t
建増しした。
【PureJava】 Derby 1 【OpenSource】
http://pc8.2ch.net/test/read.cgi/db/1128799341/

>>218-219
あなたの方が詳しいし...
221NAME IS NULL:2005/10/16(日) 15:11:24 ID:???
OOo2.0にバンドルされるんですね
222NAME IS NULL:2005/11/16(水) 16:53:31 ID:x2y+9/gP
HSQLDBで、resultsetの行数を知る方法はどうやったらいいの?

resultset.last()も、count()関数もなんか例外でるんだけど…

1行ずつ読んで全部配列に読み込むのが一番早い?
223NAME IS NULL:2005/11/16(水) 17:21:48 ID:x2y+9/gP
>>222自己レス FAQ読んで解決したよ!
224NAME IS NULL:2005/12/02(金) 01:54:44 ID:fhPLY7m/
スタンドアロンモードでは、マルチスレッドでアクセス
は不可なの?(ていうか不可でした)
ver1.7.2使っててるんだけど...
ver1.8.0だと方法はあるのかな?
それともサーバモードにしないとだめなのか...
どなたか教えてください!
225NAME IS NULL:2005/12/02(金) 02:34:11 ID:???
どのモードだろうが排他制御がない時点で2層式は無理
226NAME IS NULL:2005/12/02(金) 09:56:42 ID:???
工工エエェェ(´д`)ェェエエ工工
うちは2槽式使ってるよ。
227NAME IS NULL:2005/12/02(金) 16:38:34 ID:fhPLY7m/
>>224 自己レスです。
すいません。使ってたのはver1.7.1でした。
ver1.7.2に変更したら
スタンドアロンモードでマルチスレッドでアクセス
出来ました。
SHUTDOWN がめんどくさいですけど・・
228NAME IS NULL:2005/12/02(金) 17:43:04 ID:???
マルチスレッドは対応しても排他制御が出来ないんじゃ
あまり意味はないぞ
229NAME IS NULL:2005/12/02(金) 17:58:42 ID:fhPLY7m/
>>228 アプリ側で対応します
心配ありがとう
230NAME IS NULL:2005/12/02(金) 20:08:17 ID:???
コネクションプールつくってプール数1にするしかないね
231NAME IS NULL:2006/01/18(水) 15:12:38 ID:???
HSQLDBの血を継ぐ"H2 Database Engine" - 高速/軽量/組み込み/サーバ両対応
ttp://pcweb.mycom.co.jp/news/2006/01/18/094.html
232NAME IS NULL:2006/01/18(水) 20:49:13 ID:???
テーブル単位とはいえロックがやっと入ったか
大分いい感じだが、軽量という部分をどれだけ維持できるか

あとはHSQLDBの問題だったJDBCドライバレベルの話だな
233NAME IS NULL:2006/01/18(水) 21:30:28 ID:???
ODBCも使えるんだ。それはちょっと便利。
234NAME IS NULL:2006/01/19(木) 08:35:47 ID:dWvjuqVT
起動早い?
235NAME IS NULL:2006/01/21(土) 20:52:02 ID:0BZLO1T6
>234
起動が早いかどうかはともかく(Javaだし)、

Win以外へのセットアップがメンドイ。
インスコしたあとに、ttp://hogefuga:8082/やろうとすると.h2.server.properties が必要になるから、
それをWinのh2で作ってコピーしてやらないとlocalhost以外からのアクセスが出来ないし。

まぁ、あとはHSQLDBと同じカンジ。
236235:2006/01/21(土) 20:53:18 ID:???
ごめんなさい。ageちゃった・・・。orz
237NAME IS NULL:2006/02/07(火) 17:34:35 ID:???
H2使ってみたが、UIをFirefox用にxulな感じで吐いてくれて素敵。
derbyよりはずっと軽い印象。 あと、構文とかDB2に似てる。
238NAME IS NULL:2006/02/10(金) 22:50:41 ID:???
DerbyよりDB2に似てるって言われちゃったらIBMも形無しだなw
239NAME IS NULL:2006/02/12(日) 11:50:54 ID:???
Derby(Cloudscape)はIBMがInfomixから得たものだし、DB2と違ってても不思議じゃない。
(…と、DB2と違うとこが不満だけど、こう思ってあきらめてるオレ)
240NAME IS NULL:2006/04/12(水) 23:17:47 ID:n9dLYr/Z
HSQLDB for .NET みたいのって、どっか無いのかよ……
241NAME IS NULL:2006/04/16(日) 03:33:04 ID:???
h2だったらODBCがある。SQLiteだったら↓がある。
ttp://sourceforge.net/projects/adodotnetsqlite
242NAME IS NULL:2006/04/16(日) 05:23:06 ID:???
h2のODBC接続って、別プロセスでサーバとして起動してそこに接続ってことでしょ。
そんなことするくらいなら、mysqlとかpostgresとか使うと思われ。
243NAME IS NULL:2006/04/16(日) 11:57:47 ID:???
>>240
無償じゃないけどあるよ

Accessっていうんだ。
244NAME IS NULL:2006/04/22(土) 18:10:51 ID:7EOj+0as
CSVのデータをテーブルに流し込んでやる事は出来るんじゃろうか。
コードを書かずに…どなたか教えてください。
245NAME IS NULL:2006/04/22(土) 19:37:49 ID:???
246244:2006/04/22(土) 21:31:32 ID:bdflM9nn
>>245
ありがとうございます!!
247NAME IS NULL:2006/04/29(土) 13:05:09 ID:GTRbXOe3
教えてください。
HSQLを立ち上げると

java.sql.SQLException: socket creation error
at org.hsqldb.jdbc.jdbcUtil.sqlException(Unknown Source)
at org.hsqldb.jdbc.jdbcConnection.<init>(Unknown Source)
at org.hsqldb.jdbcDriver.getConnection(Unknown Source)
at org.hsqldb.jdbcDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(DriverManager.java:525)
at java.sql.DriverManager.getConnection(DriverManager.java:171)
at org.hsqldb.util.ConnectionDialog.createConnection(Unknown Source)
at org.hsqldb.util.DatabaseManager.main(Unknown Source)
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at org.hsqldb.util.DatabaseManager.execute(Unknown Source)
at org.hsqldb.util.DatabaseManager.actionPerformed(Unknown Source)
at java.awt.Button.processActionEvent(Button.java:388)
at java.awt.Button.processEvent(Button.java:356)
at java.awt.Component.dispatchEventImpl(Component.java:3955)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchTh
read.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
ad.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

となります。
どうすれば使えるようになるのか、知っている方教えてください。
よろしくお願いします。
248NAME IS NULL:2006/04/30(日) 06:19:14 ID:???
釣り・・・か?
249NAME IS NULL:2006/05/01(月) 00:08:18 ID:???
いやーどうだろう・・・・。
250NAME IS NULL:2006/05/22(月) 03:20:52 ID:???
h2database の新しいのが出てます。
俺の報告したbugが直っていた。嬉しい。
251NAME IS NULL:2006/05/22(月) 04:28:37 ID:???
>>250
おれが報告した問題もちゃんと治ってたよ! 嬉しい。
252NAME IS NULL:2006/06/05(月) 14:56:40 ID:0QpAhujy
ねぇねぇ、HSQLDBはじめて使ったんだけど
SELECT * FROM "テーブル名"
とか、
UPDATE "テーブル名" SET "name"='HogeTaro' WHERE "id"=3
といったように、テーブル名や列名をダブルクォートで囲まないとエラーになるのは
HSQL固有の癖なの?
こんなDBはじめて。
253NAME IS NULL:2006/06/05(月) 16:13:14 ID:???
>>252
2バイト文字使うのやめれ
254NAME IS NULL:2006/06/05(月) 16:44:01 ID:???
>>253
実際には使ってないけど。
asciiでもダブルクォートがないとエラーになる。
255NAME IS NULL:2006/06/05(月) 17:32:11 ID:???
NetBeansのSQLコマンド窓から使ってるからかな。
256NAME IS NULL:2006/06/05(月) 18:09:06 ID:???
ちがうらしい。jdbcでいじくっても必要だ。
めんどくさ!
257NAME IS NULL:2006/06/05(月) 23:19:43 ID:???
>>252
いままで全然そういうふうになったことないんだけど....
258NAME IS NULL:2006/06/06(火) 03:49:44 ID:???
テーブル名をASCIIで大文字で書いたときは""はいらないみたい。
HOGEなら不要、hogeやHogeは必要。
HSQLDB 1.8.0.4
259NAME IS NULL:2006/06/06(火) 06:42:12 ID:???
2バイト文字なら、くくっておくのがいいだろ。
これは大抵のDBに言える。
>テーブル名をASCIIで大文字で書いたときは""はいらないみたい。
これはHSQLDBの変な仕様だよね?
テーブル名がCase Sensitiveってことか?
260NAME IS NULL:2006/06/06(火) 09:25:30 ID:???
いや、明確に小文字だと認識させたい場合にクオートでくくらないといけないのは、
商用のDB2でも同じ。
くくらない場合、自動的に全部大文字と解釈されるよ。だから常にクオートを
使わなければ問題は出ないはず。
261NAME IS NULL:2006/06/06(火) 14:48:02 ID:???
SQLは基本的に大文字小文字の区別をしない。特に指定しなければ大文字になる。
のが規格なんだけど、実際のDBでそうでないものもある。だから誤解を生むんだね。
262252:2006/06/06(火) 17:46:02 ID:???
なるほど、そうでしたか。
ありがとうござます。
今までMySQLとPostgreSQLしか使ったことがないもので。
263NAME IS NULL:2006/07/04(火) 10:14:37 ID:AwFHTmFN
Oracleで言うところのrowidって、HSQLDBには無いですか?
全てのテーブルの各レコードに自動で割り当てられ、テーブルをまたいでも
一意性が保証されるIDです。
264NAME IS NULL:2006/07/19(水) 17:09:58 ID:???
HSQLDBってデータを全部メモリ上にもってるの?
データファイルを見ると、SQL文が延々ならんでいるから、起動のときこれを
ぜんぶ読みこむんだろうけど。
そんでシャットダウンするときは、ぜんぶセーブするってこと?
265NAME IS NULL:2006/07/19(水) 18:04:11 ID:???
create cached table(...);
266NAME IS NULL:2006/09/24(日) 11:04:42 ID:???
swing + hsql で秘密のデータベースを作ろうとしてたけど、
データベースにパスワード付けても.scriptファイル開けば全部見られちゃう。
バイナリ保存とか暗号化して保存はできないの?
267266:2006/09/24(日) 11:35:17 ID:???
本当に申し訳ありませんでした。
自己解決というか、自分が間違っていました。
スタンドアロンで使ってたので、create table ....... すればcashedテーブルになると思い込んでいました。
これではデフォルトのメモリテーブルになってしまい、.scriptファイルに全部残ってしまう(メモリなのに?)。
create cashed table ..... にしないといけないのですね!

でもsaのパスワードは.scriptに明記されてるけど、まぁいいや。
268NAME IS NULL:2006/10/15(日) 06:24:51 ID:???
誰か h2databaseのスレ立ててよage
269NAME IS NULL:2006/10/19(木) 11:58:00 ID:Zh8CorAE
>168あたりからバックアップに関する書き込みがあったけど、
・「CREATE MEMORY TABLE」なテーブルだけなら、.scriptsをコピーすればOK
・「CREATE CACHED TABLE」なテーブルがある場合、.scriptsと.data、.propertiesの三つをコピー
でおk?
あと、shutdownされないとデータは(MEMORYでもCACHEDでも)保存されないのかな?
だとすると起動しなおしになるのでちと面倒だなぁ。……まぁ、いちいちCSVとかに落とすよりははるかに楽だけど。
270266:2006/10/19(木) 21:14:18 ID:???
オートコミットだっけか?
.propertiesになんか設定あって、
デフォルトでは、変更されたデータは瞬時に保存されるんじゃなかったっけ?
ドキュメントにその辺について詳しく書かれていたはずよ。

全部あいまいなレスでスマソ
271NAME IS NULL:2006/10/20(金) 01:06:16 ID:???
checkpointは?
272NAME IS NULL:2006/10/22(日) 03:01:55 ID:???
一通りトランザクション済んだら、shutdown でよくね?
273269:2006/10/23(月) 22:47:54 ID:kctqRJ1S
>>270
>>272
遅resスマソ

shutdownしてもう一度コネクション張りなおすかなぁ……。
別アプリにして純粋にファイル操作としてコピーするっつー手もあるけど、どーせGUI付けろって言ってくるだろうしな(苦笑

ちなみにブツはEclipse RCP。3.1になってからかなり便利になったと思ふ。
274NAME IS NULL:2006/11/11(土) 11:27:58 ID:ojaxIhdh
んと、BIT型のデータ、getBoolean出来るのにsetBooleanできない。なぜ?

hsqldb.jarからUPDATEのSQL作って実行して、JDBCからgetBooleanするとちゃんと取得できるのだが、同じ場所からsetBooleanして実行すると反映されない。
同じ実行で弄った他のカラムの変更は反映されてるから、shutdownしてないとかゆーオチでも無いし……なんで?
275NAME IS NULL:2006/11/28(火) 01:59:19 ID:???
INTEGRT型のIDフィールドを連番にしたいけど、皆さんはどうやってますか?
今はレコード追加する度に、IDフィールドの最大値+1でやってます。
もっとスマートな方法はないでしょうか……
276NAME IS NULL:2006/11/28(火) 09:46:22 ID:???
>>275
自動連番ということ?
それなら列定義にIDENTITYを加えれば良いと思うよ。
277NAME IS NULL:2006/11/29(水) 21:42:40 ID:???
>>276
ありがとうございました。
勉強不足でした。もっとSQLの勉強に励みます。
278NAME IS NULL:2006/12/21(木) 01:53:03 ID:???
テーブル作るとき
create table person (
id integer identity primary key,
name varchar
)

レコード追加するとき
insert into person values (null, 'taro')

これでidがゼロから始まって自動連番になっていく。
279NAME IS NULL:2006/12/21(木) 07:29:35 ID:???
JDK6にしたら接続できなくなったよ・・・
280NAME IS NULL:2006/12/27(水) 21:38:59 ID:???
HSQLDB Database Manager Swing のメニューバーのToolsの中に、dumpとrestoreがあるけど、
便利そうなんだけど、これ使えた人いる?どうやって使うの?
あと自前のプログラムからSQLコマンドでdumpとかrestoreできるの?
ドキュメント見ても載ってない。

上のほうでバックアップのことが書かれていたけど、付属のツールでやるほうが安心かと。
281NAME IS NULL:2007/01/04(木) 22:59:46 ID:???
何を言ってるのやら
282デフォルトの名無しさん:2007/01/05(金) 07:54:55 ID:MVwtvARW
これってさ、JAVAアプリとかに組み込み可能なRDBなんだよね?
JAVAに組み込み可能なピュアjavaのOODBないの?
283NAME IS NULL:2007/01/05(金) 10:17:58 ID:???
284NAME IS NULL:2007/05/21(月) 16:34:01 ID:???
ほしゅ
285NAME IS NULL:2008/02/12(火) 23:18:19 ID:???
HSQLがJavaでなければ、、、、、と思う。
286NAME IS NULL:2008/02/13(水) 15:39:41 ID:???
H2がある昨今、HSQLのメリットって何だろう?
特に無条件新規の場合
287NAME IS NULL:2008/03/10(月) 01:37:00 ID:???
テキストエディタで中身が確認できる
288NAME IS NULL:2009/02/19(木) 20:02:18 ID:9Ddd0lZw
>>288
      ∧,,∧ ∧,,∧
   ∧,,(´-ω-)(-ω-`)∧,,∧
  ( ´-ω)旦o) (o旦o(ω-` )
  (_  o[(  ´-) (-`  )]o _)
  └'ー-(_   )][(   _)ー'┘
      'ー'^ー'   'ー'^ー'
289NAME IS NULL:2009/02/19(木) 20:21:39 ID:o/Cz7YlW
ソニンが日英合作映画に出演するとのこと
『女優』として『脱ぐ』ようです
作品としてはR18になるようですので期待しちゃいますね


http://pc11.2ch.net/test/read.cgi/mobile/1140247163/
290NAME IS NULL:2009/02/22(日) 23:21:47 ID:3WTAuxg1
>>288
`∧_∧
(´・ω・)
( つ旦O
と_)_)
ちょっと休憩。
291NAME IS NULL:2010/06/17(木) 05:23:33 ID:???
ピュアJavaデータベースHSQLDBの最新版「HyperSQL 2.0」が公開
http://sourceforge.jp/magazine/10/06/11/107227
292NAME IS NULL:2011/03/18(金) 23:58:58.35 ID:???
HyperSQL 2.1 Released
The latest version 2.1 GA introduces enhancements in all areas.
It supports the widest range of SQL Standard features seen in any open source database engine.
We have reached SQL Standard conformance to almost full SQL-1992 Advanced Level and SQL:2008 core language features plus an extensive list of SQL:2008 optional features and many extensions.

293NAME IS NULL:2011/03/19(土) 00:01:00.52 ID:???
Many enhancements have also been made to Java and SQL stored procedure and function support, and to other areas.
294NAME IS NULL:2011/05/08(日) 00:46:04.61 ID:H0nvAfRp
やっぱストアドプロシージャ書けるのは良いな。
295電脳プリオン 忍法帖【Lv=40,xxxPT】(1+0:8) 【37.2m】 :2013/04/28(日) 21:37:13.70 ID:??? BE:304056465-PLT(12080)
もう語らないのか
296NAME IS NULL:2013/11/04(月) 12:19:30.31 ID:xUgHkyHF
事前面接の事実をおさえて職安法44条で刑事告訴
http://wiki.algomon.com/wiki/%E4%BA%8B%E5%89%8D%E9%9D%A2%E6%8E%A5
297NAME IS NULL
2/14にVer.2.3.2リリースしてた