トップページ⇒tech
900コメント347KB

InterBaseを使いこなすスレ

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001ななしっす。NGNG
InterBase。
コンパクトで一通りの機能がそろっているデータベースサーバ。

マルチプラットフォーム、UNICODE、レプリケーションをこなし、
クライアントへのイベント通知(InterBaseの特許)といった特異機能もある
が、情報が少ないのでココで盛り上げていきましょう。
0002デフォルトの名無しさんNGNG
関連ページにリンクを貼って。
0003ななしっすNGNG

Borland InterBase
http://www.borland.co.jp/interbase/

InterBase For Linux and FreeBSD
http://iblinux.rios.co.jp/

InterBase Information
http://isweb1.infoseek.co.jp/~tmaki/index.html

InterBase6 メモ
http://homepage1.nifty.com/Que/plamo/ib4linux/

IBReplicator レプリケータ
http://www.replication.co.za/

Borland ニュースグループ
newsgroups.borland.co.jp

オープンソース関係

IB Phoenix オープンソース版 InterBase / FireBird をサポート
http://www.ibphoenix.com/

InterBase 6.01 OpenSource
http://www.borland.com/devsupport/interbase/opensource/

FireBird もうすぐ 1.0 がリリース
http://firebird.sourceforge.net/

XTG InterBase ODBC Driver [Free]
http://www.xtgsystems.com/ib6odbc.php3

Twise Lab
http://www.twise.co.jp/index.html
オープンソース版の日本語対応を行っている

俺の知っている範囲だとこれだけ。
書籍情報やML、NewsGroup などの情報も求む。
日本語情報は貴重。
0004デフォルトの名無しさんNGNG
なんだ暴乱怒か。いらねーな。
0005仕様書無しさんNGNG
某スレは人気ねーな・・・メインで使用してるのにな。漏れはな。
0006デフォルトの名無しさんNGNG
BDEと比べて何がいいの?
0007仕様書無しさんNGNG
BDEと何を比べるのだ?Interbaseと比べるのか?
0008デフォルトの名無しさんNGNG
Delphi6Proに付いて来た版をDelphi6Proのチュートリアルの通りに試しただけの素人ですけど

・BDEはファイル=テーブルだが、InterBaseはひとつのファイルに
 複数テーブル置けるっぽいのでリレーショナルが楽かな?
・でもいちいちサーバー起動させないといけないっぽい。
 常駐させる気はさらさらないので、個人じゃオーバースペックかな…。
 (Delphi/C++Builder/Kylixの有償版ならMyBaseが使えて個人ではそっちが便利そう)

という感じです。
「個人で」本格的に使っている人いたら、使用感を聞かせてください。
0009デフォルトの名無しさんNGNG
>>6
Paradox,DBaseなどのファイル共有型とくらべてかな?
もちろんネットワーク共有だとInterbaseの方が有利。
ファイル共有型だとページロックでかなり待たされる。

それから内緒だけど米国サイトでダウソしたIB6.0のバイナリには
日本の某からダウソしたIBConsoleが使えるよ。

ところで誰かジェネレータの初期値のセットをクライアント側で
行わせる方法知らない?isql以外で。
0010デフォルトの名無しさんNGNG
知らない。

もっとFireBird 使えやコラ!
0011デフォルトの名無しさんNGNG
FireBirdはソースを刷新してる最中らしいから
安定板がでてかな。IBとの互換性がどの程度保証
されるかが気になる。
0012デフォルトの名無しさんNGNG
firebird まだ 1.0 出てなかったんだ…

InterbaseはSQLの勉強に使ったよ。
Linuxでも動くしね。
0013デフォルトの名無しさんNGNG
>>9
SET GENERATOR TableName TO 100;
でいける

副問い合わせとか使えないから
複雑な問い合わせは
ストアドプロシジャになってしまう

古いIBConsoleではシステムテーブルも見えて他のに
新しいのに変えたら出てこなくなりました
表示させる方法ない?
0014デフォルトの名無しさんNGNG
http://slashdot.jp/journal.pl?op=display&uid=125&id=40887
http://iblinux.rios.co.jp/ml/
http://www.ssi-n.com/~maki/cgi-bin/diary/
0015デフォルトの名無しさんNGNG
>>11
Firebird1.0とInterbase6.5はそれぞれ独自の拡張が入ってるので
互換性はないっぽい。

IBXがInterbaseでのみしか使えなくなると痛いよぅ…
IBOはFirebirdもサポートしていくらしい。
0016デフォルトの名無しさんNGNG
フリーで使えるのはIBXぐらいしかなかったような
IBOってフリーじゃないよね?
0017デフォルトの名無しさんNGNG
Firebird 1.0.0 出たね
0018デフォルトの名無しさんNGNG
今ちょうどDelのParadoxのアプリをInterBase(客先へはFireBird)へ移植作業中

ParadoxのTTableを単純にInterBaseExpressのTIBTableへ置き換えると失敗する
主にTIBDataSetを使うべしだね
0019デフォルトの名無しさんNGNG
>>18
FireBirdで納品か、理解あるお客さんだなぁ…
TIBTableはIBX作者自身が「使うんじゃねえ」って言うぐらいパフォーマンスに
問題があるらしい。
0020gw.borland.co.jp ◆yYkiH1IY NGNG
こりゃすげースレだわ。
0021デフォルトの名無しさんNGNG
>>19
計算項目の中でおなじテーブル(もちろんコンポーネントは別)を参照した状態で
Locate すると凄まじい数の Scroll が発生して使い物にならなくなる

Paradoxでは平気なんだけどね
002221NGNG
あ、勘違いだ・・・参照項目を使ってるだけでもアウトくさい

とにかく使っちゃ駄目なコンポーネントだねTIBTableは
0023デフォルトの名無しさんNGNG
>>22
というより、Firebirdで納品するのにIBXは使っちゃ駄目な気が…

002421NGNG
>>23 おろ・・・情報サンクス
ライセンスか、動作上の問題か・・・とにかく調べてみるよ

動作の方は、今のところ大丈夫みたいなんだけどね(FireBird 1.0で)
002523NGNG
>>24
動作上の話。ライセンスは問題ないはず。
IBXはFirebirdはサポートしないと明言してる(当たり前か)し、Firebird1.0で
多少(DBの情報取得系)のAPI拡張が入ってる。
今はまだいいかもしれないけど、この先InterbaseとFirebirdはどんどん違う物に
なっていくのは必至。そしたらIBXもIBXを使って作られたツール類(IBConsoleとか)
もFirebirdでは使えなくなるかもしれない。

Firebird1.0はSQLの拡張も入ってるけど、拡張部分は当然Interbaseとの互換性は
無くなってるから、両方使い分けるって事も難しくなってくる。

いやさ、同じことで悩んでる最中でさ。どうしたもんやら…
IBOは有償だし日本語ドキュメント皆無だし。
002621NGNG
>>25
なるほど・・・

IBXを使うなら基本的な機能だけにとどめて
ちゃんと動作したら、以後はむやみにバージョンアップしないという
・・・「逃げ」かな

とにかく、貴重な情報でした・・・どうもありがとう
0027nakaNGNG

いや、それでも IBX でいいんじゃないか?
002823NGNG
あ、よく考えたらIBXてばソース公開されてるし、IPLだからソース改変→再配布OKだし
その気になれば自分でFirebirdに追従していけばいいのか。
つーかその時が来れば誰かが何とかしてくれそうな気が…(他力本願
0029デフォルトの名無しさんNGNG
教えてくんでスマンが、InterbaseかFirebird用のOLEDBプロバイダってどっかにない?

これ有れば、メインで使うんだけど…
0030デフォルトの名無しさんNGNG
>>29
VBにADOでもやれるみたいだけど
0031デフォルトの名無しさんNGNG
>>29
//www.oledb.net/
0032nakaNGNG
InterBase の クライアントって gds32.dll だけでいいって本当ですか?
0033デフォルトの名無しさんNGNG
>>32
接続用ライセンスファイルが必要。
Firebird なら関係ないはず。
003429NGNG
>30-31
サンクスコー!
やっとストアド使える環境に以降できるさ…
0035nakaNGNG
>>33

なるほど。FireBird なら gds32.dll だけか。楽だなぁ。

とすると、DB をFireBirdにして
Delphi で IBX 使って作ったシステムだったら
アプリのフォルダに gds32.dll を入れて
フォルダ毎コピーすればインストール完了ってこと?
0036デフォルトの名無しさんNGNG
ほとんど趣味でプログラムやってる者です。

Delphi5のPRO版に付いてきたけど、あえて個人で
使うメリットってあります?

普段は普通に標準DBコンポをParadox形式で使ってます。
0037デフォルトの名無しさんNGNG
イマイチ盛り上がりに欠けるね。
技術版らしく、技術の比較でもしてみるけ?

無料で使えるという観点で、ライバルと目されるのはPostgreSQL、MySQL、MSDEあたり?
機能、速度、安定面から比較は有意義かと思うが、どうよ?
0038デフォルトの名無しさんNGNG
>>36
大勢が同時にアクセスするのでなければParadoxで十分でしょ
(Delphiで一番扱いやすいのはParadox)

ただ、趣味としてでも本格的なデータベースを使ってみるということなら
それはそれで楽しいと思いますよ
0039デフォルトの名無しさんNGNG
>>35
>アプリのフォルダに gds32.dll を入れて
>フォルダ毎コピーすればインストール完了ってこと?
InterBase インストール先のレジストリの設定が必要だと思う。
Firebird はインストーラでしかやってないからどうだか知らない。
004039NGNG
>>39
>InterBase インストール先のレジストリの設定が必要だと思う。
ごめん。いらないかも。自分で試してみて。
0041デフォルトの名無しさんNGNG
あのう、削除してもファイルサイズ小さくならないですよね。
削除して登録すると登録件数が同じでも前より大きくなりますよね。
使っているとだんだん大きくなってきますよね。
どうやったら削除したレコードを完全に消せてファイルサイズを小さくできるんですか?
いくらハードディスクが大容量になったとはいえ、ファイルサイズが大きくなり続けるとハードディスクがすぐパンクしてしまいます。
バックアップも大変です。
どうしたらいいんでしょう?
0042デフォルトの名無しさんNGNG
>>37
とりあえず Firebird の良いところ)
・マルチプラットフォーム対応(Win,Linux,FreeBSD,Solaris,MacOS,...)
・1DB=1ファイルのためバックアップも楽だし管理し易い
・SQL92準拠(だったかな)
・さまざまなI/Fミドルウェアがある
・UDFで独自関数拡張できる

Firebird の欠点)
・>>1の言うように情報が少ない。特に日本語解説サイトが極少。
 現状では、InterBase5 の日本語マニュアル(PDF)でなんとかなるが。

InterBase は商用に戻った時点で×。(客先指定以外はもう使わない。)

以前 Postgres 使ったことあったが、Win版がないから使うのやめた。
(cygwin で動くみたいだがネイティブじゃないとね。)
ML も活発だし情報量は一番なんじゃないかな。

MySQL はつかってないから知らない。(トランザクション未対応?)

MSDE はインストールがめんどい。
あと接続数の制限があったような気がする。
あと Win でしか使えないのが×。
0043デフォルトの名無しさんNGNG
>42
Firebird最大の欠点は知名度の低さだとおもいます。
お客様に信用してもらえない。
0044デフォルトの名無しさんNGNG
>>41
スイープすれば小さくなるよ。
Win版のInterBase使ってるなら「Server Manager」GUI ツール使えば簡単。
0045デフォルトの名無しさんNGNG
BorlandのサイトにInterBaseの参考書籍として載っているのは
「データベース Linux InterBase 4.0 For Linux」と
「データベース Linux Java ServletによるWebサーバー構築 編」の2冊

1冊目の方のInterBaseも小さく書かれているし
2冊目には至ってはタイトルからInterBaseを想像することは難しいくらい
なのにどちらもメインの開発環境はなんとDelphi(どこかLinuxじゃこら!)

Kylixが出てからならまだしも2冊目ですら2年前に出版されてるのに
これほどタイトルと内容の一致しない本は珍しいと思ったよ
0046デフォルトの名無しさんNGNG
>41
PostgresでいうVACUUMが必要だと思われ。
Interbaseは指定回数のトランザクション処理後に自動でガベージコレクション発動じゃなかったっけ?

詳しい人かもーん。
004741NGNG
>>44
スイープっていうの?
Server Managerというのでできのですね?
ありがとう。
0048デフォルトの名無しさんNGNG
>>43
>Firebird最大の欠点は知名度の低さだとおもいます。
>お客様に信用してもらえない。
「InterBaseなら信用してもらえる。」ってこと?

素人のお客なら、「DBMS」ってこと自体知らないから楽。
現にこの前 Firebird 1.0RC2 使って納入したよ。
当初DBサーバをXPにする予定だったけど、
コネクション時間が異常に掛かる問題が出て(Firebird のバグかな?)
Win2K に変更してもらった。それ以降、今のところ問題は出ていないけどね。
0049デフォルトの名無しさんNGNG
>>47
データベースのスイープってみたいなメニューがあると思うよ。
念のため実行する前に一度そのDBファイル(.gdb)バックアップ取っておいた方がいいよ。
(単にそのDBファイルをどっかにコピーしとくだけでいいけどね。)
0050デフォルトの名無しさんNGNG
>Interbaseは指定回数のトランザクション処理後に自動でガベージコレクション発動じゃなかったっけ?
・デフォルトでは20000トランザクションでスイープ
・gfixを使って回数を指定可能
ということのようだね
0051デフォルトの名無しさんNGNG
>>47
IBConsoleのメニュー
「データベース」-「メンテナンス」-「データベースのスイープ」
でできるよ
0052デフォルトの名無しさんNGNG
スイープしなきゃだめなの?
レクラメーションしてくれないの?
0053デフォルトの名無しさんNGNG
>52
手動でしたくなきゃ >50 の方法で対応すれば?
頻繁に更新トランザクションがあるわけじゃなきゃほっときゃいいけどなぁ。
オレの場合、数十万件/数十MB弱(数年経過もの)のDBやってるけど、
スイープは一度しかしたことないよ。
(追加は多いときで数百件/日、変更、削除はそんなに発生しない。)
別にスイープしなくても問題なかったけど、MOとかにバックアップするのに
容量食ったからという理由くらい。
005453NGNG
訂正)
× 数十万件/数十MB弱(数年経過もの)
○ 数十万件/100MB弱(数年経過もの)
0055デフォルトの名無しさんNGNG
gbakのバックアップから戻してもサイズが小さくなるね。
それにしてもすぐdatおちするかとおもえば結構使ってる人いたんだね。
0056デフォルトの名無しさんNGNG
interbaseはどの程度の規模のシステムまでつかえるのでしょうか
企業ではoracleがよくしようされているが
oracleはデータエリアを確保しておく必要があったり
設計事態が一昔前のホストコンピュータみたいでものすごく使いにくい。
0057デフォルトの名無しさんNGNG
少ないリソースで動く(らしい)のも魅力だよなー。
客先にプレゼン逝くときにノートにOracleなんか入れてられないし。

いまやってるシステムもOracle使うほどの規模じゃないから
InterBase使いたいが、誰も知らないという罠

某ももうちょっとマーケティングに力いれろYO!
0058デフォルトの名無しさんNGNG
>56
↓にInterBase5.5 のデータベース仕様が書いてある。
www.borland.co.jp/interbase/papers/ib55wp/ib55wp_2.html
実際にはどの程度の規模までなら安定して使えるかはわからないから、
検討しているなら Borland に問い合わせてみた方がいいよ。

↓ケーススタディ
www.borland.co.jp/interbase/cases/
0059デフォルトの名無しさんNGNG
ケーススタディをみると、確かに結構規模の大きいシステムの例も
あるが、売買データなど非常にシビアなシステムの例がちょっと
少ないと思えるがどうなんでしょう。
0060デフォルトの名無しさんNGNG
ORACLEて、ろくなサポートしないくせに保守料を取ったりして
殿様商売している。
INTERBASEを使っているわけではないがORACLEと比較して
保守が非常にやりやすいのではないでしょうか
ORALCLEは領域確保など必要で昔のオフコンみたいで使いにくかった
と記憶しているが
INTERBASEが中規模のシステムで本当に使えるならこちらを使いたいが
会社の何もしらない社長なんかがORALCE使えとうるさいが。
0061デフォルトの名無しさんNGNG
ケーススタディ なら洋物もみておいた方が。
http://www.borland.com/about/cases/


0062デフォルトの名無しさんNGNG
金が絡んだちょっとシビアなシステムを開発するときは
排他制御やロールバックなどがきちんとできるか、どの程度の同時アクセスに
耐えられるかを知りたい。
これは他社の例を参考にするだけでなく
(システム特性は個別に異なるため)
INTERBASEを小規模なシステムから適用して自分で確認するしかないのでしょうね。
0063デフォルトの名無しさんNGNG
日本語カラム名を使いたいなんて厨房発言する
SIerには、お勧めしない。
0064デフォルトの名無しさんNGNG
金の絡まないシステムに暫く使って様子見ようかね。

一つ心配なのが、Interbaseが有償に戻ったことで、Firebirdにどういう影響でるんだろ?
独自拡張の道を歩んでIBとは別物になっていくのか、追従し続けていくのか…

独自で行くならIBConsoleはつかえないんだよね?
0065デフォルトの名無しさんNGNG
>>64
別物になっていくんだろうね。Firebirdも1.0からコードベースをC++に移行したり
してるところを見ると、Interbaseに追従する気も無いんじゃないかな。
BorlandがInterbaseのすべての変更をオープンにしない以上は、追従しようと思っても
出来ないよね。
Firebird1.0で拡張されたSQLの目玉部分である、取得行の絞り込み(コレがないから
Interbase使えないって人も多かったと思う。特にWebアプリ)は、Interbaseでも実装
されるんだけど構文は全く異なることから、これからは別物のDBMSだと思った方が
いいと思う。
細かい話はここ参照
http://www.ibphoenix.com/ibp_news_art8.html

IBConsoleは少なくとも今現在は問題なく使用できるけど、将来に渡っても問題なく
動作するかどうかは分からない。
でも、IBConsoleより遙かに高機能で使いやすい管理ツールはたくさん公開されて
いるから、今後IBConsoleを使用し続ける積極的な理由も無いと思う。
0066デフォルトの名無しさんNGNG
>>65
先月のデータベースカンファレンスにAnn Harrisonが出席してて、「C++で書き直しているってことは、FirebirdとInterBaseは別物になるんですか?」という質問に対し「Absolutely!」ときっぱり言い切っていました。
0067デフォルトの名無しさんNGNG
Firebird の日本語オフィシャルサイト設立希望。
日本語マニュアルがあればユーザ数が激増すると思う。
0068デフォルトの名無しさんNGNG
そうだよな、やっぱ情報量の少なさが最大のネックだよな…
このスレの名称も「Firebirdを使いこなすスレ」の方がヨカタかも
0069デフォルトの名無しさんNGNG
厨房ですまそん
なんかインストール中にSETUPAPI.DLLが無いって言われるんです。
だれか、対処法を知りませんか???

delphi関係で質問したけど、反応無かったのでこちらに
再度カキコさせていただきました。

W2KのIB5です。
0070デフォルトの名無しさんNGNG
>>67
日本語マニュアル以前に、本家のマニュアルもいまだ存在しないと言う罠…

sage進行じゃないよね? age
0071 NGNG
>>70

今のところはInterBaseのマニュアルで代用だね〜
もっともInterBaseのための書籍も極端に少ないけど
0072デフォルトの名無しさんNGNG
>>69
ええと、まずInterbase5.xはWindows2000非対応とのこと。
で、インストール方法は
・エラー無視でそのまま続行してOK(な場合あり
・Interbase5.xのCDからSetupAPI.DLLをWINNT\System32に上書きしれ
・Windows2000をSP1に戻してInterbase5.xインストールしれ

って↓に書いてあるんだと思う。タブン
http://community.borland.com/article/0,1410,27633,00.html
007369NGNG
>>72
おおおおおおおおおお!
いくら日本のページ探しても、出てこないわけだ・・・

どうも、ありがとうです。
漏れの持ってる、翻訳ソフトちょっと、オもろかったので
載せちゃいます。
以下、英訳
007469NGNG
InterBaseインストールがファイルsetupapi.dllをインストールしていて、
setupapi.dllのすでにインストールされたバージョンを踏みにじっている
ので、このエラーはoccuringしている。

・・・踏みにじらないで(藁
0075Firebird教信者NGNG
ASCII の「Linux business vol.3」という雑誌(というかムック)に
InterBase6.0 の記事が50ページ以上にわたって書かれてるよ。
オレも持ってるけどコレ必読。
http://www.ascii.co.jp/books/detail/4-7561/4-7561-3858-6.html
FirebirdってInterBase6.0から派生したからFirebirdから始める人にも
重宝すること間違いなし!
0076デフォルトの名無しさんNGNG
>69
>72
昔やったとき、Win2K(たしかSP1) + IB5.6 でちゃんとインストールできたよ。SP2 はダメなのか?。
動作保証されてないってことだけど、この組み合わせでやって動作上の問題は出なかったけどね。
(今はもう Firebird に移行しちゃったよ。)
0077デフォルトの名無しさんNGNG
>74
翻訳の王様バイリンガルVer.5編)
InterBaseインストールがファイルsetupapi.dllをインストールして
setupapi.dll.のすでにインストールされたバージョンで足を踏み鳴らしているので、
このエラーは起こっています。

ほぼ同じだがoccuringが一応変換されてる分ましかな?
0078デフォルトの名無しさんNGNG
同一マシンに InterBase と Firebird 両方インストールできるようにしてもらいたい。
とりあえず Firebird をメインにしてくつもりだけど、今までしてきた仕事のこともあって
InterBase 入れておかないとならないから。
(今は InterBase用と Firebird用マシンを分けて使っています。)

それから Firebird なのに "InterBase ..." や "IB..." という名称使わないようにしてもらいたい。
ibguard => fbguard
ibserver => fbserver
/opt/interbase => /opt/firebird
IBExpress(IBX) => FBExpress(FBX)
InterClient => FireClient?
*.gdb => 違う拡張子にして。
gds32.dll => 違う名前にして。
isql => 違う名前にして。
などなど。

以上、My要望でした。
007978NGNG
追加です。
サービス名やデフォルトのポート番号も変えなきゃだめだね。
gdb_db => firebird_db? とか。
IBServer 3050 => FBServer 3051とか。
InterServer 3060 => FireServer? 3061とか。
ってココで言っても無駄だけど。
0080デフォルトの名無しさんNGNG
>>78
そりゃさ、両方生かしたい人もいるだろうけど、フツーは下手に環境いじらなくても
移行出来ることを期待するのが大勢じゃない?
0081デフォルトの名無しさんNGNG
>>78
そら、InterBaseのバージョンが上がったって同じことなんじゃないの?今のとこFirebidとInterBaseの違いってそんなもんでしょ。
008278NGNG
>>80
とりあえずは、同名でも両方インストールできればいいけど、現にできないし、
今後両者は違う路線を行くようだから、そうなった場合にややこしくなると思う。
それじゃ自分が使う方1本に絞ればいいかというと、やっぱそうはいかない。
過去の仕事=InterBase5.x
今後の仕事またはプライベート=Firebird
ということで、InterBase は当分対応しなきゃならない。
もし客先にバージョンアップしてもらうにしても、
IB5 => IB6以降の移行は考えられても、Firebird はまず考えられない。
現状「IBで」安定して動いているからだし、まず客先がYesというかどうかということもあるから。
008378NGNG
>>81
InterBase 複数Ver.が同居できるに越したことはないけど。
ただ、InterBase のバージョン間については互換性があると
いうこと前提で考えるとそんなに問題はないと思う。
InterBase と Firebird は別物ということになると、
両方インストールできないとまずいということ。

> 今のとこFirebidとInterBaseの違いってそんなもんでしょ。
もうすでに(Firebirdの)独自仕様の機能があって、それ使ってるけど。
0084デフォルトの名無しさんNGNG
>>78
おいおい、なんのためのオープンソースだよ…
0085 NGNG
Windows95へFireBird 1.0RC2 をインストールしようとしたら
1台はうまくいって、もう1台はうまくいかなかった

うまくいかなかった方はさきにgds32.dllをコピーしてみたり
いろいろいじったのがいけなかったのかも知れないけど
・・・レジストリを一旦消してみるかな
0086デフォルトの名無しさんNGNG
>>85
1.0.0が出てるのにRC2を入れたのはなんで?
0087 NGNG
>>86
先日、客先へ持っていったときは1.0.0が出てたのに気付いてなかったから(恥
やっぱそのほうがいいよね・・・とりあえずInterBaseとの互換性とかを再チェック
0088デフォルトの名無しさんNGNG
>>87
つーか、客先にDBMSのβ版入れる常識の無さを小一時間…
0089デフォルトの名無しさんNGNG
>>88
オープンソースのベータ版と商用ソフトのそれとでは、ちょっと意味が違うからね。要は使う人次第だと思うが。
0090デフォルトの名無しさんNGNG
おい、貴様ら!ageて下さい!
0091デフォルトの名無しさんNGNG
これ見て知ったのだけど、BorlandってUNIX版のInterBase、捨てつつあったのね。

http://firebird.sourceforge.net/index.php?op=faq#q14.dat
0092ななしっす。NGNG
FireBird のクライアントに何を使っていますか?IBXですか?
0093デフォルトの名無しさんNGNG
>>91
なんでそんな結論を?
Linux と Solaris での「動作保障」をしているが?

オープンソースだからコンパイルできます。ってことだけでサポートを
気にしなくてよいならそれこそほとんどすべての Unix で「動く」よな?
0094デフォルトの名無しさんNGNG
RIOSのMLに入れば少し情報が増える。
某社を退社してフリーになった加藤大受氏もたまに見受けられる。
(一応 FireBird プロジェクトのメンバーは続けてるみたいよ。)
0095デフォルトの名無しさんNGNG
大受がいなければ IB ももう少し広く使われたかもねぇ。
いやほんとに惜しい。
0096デフォルトの名無しさんNGNG
>>95
私怨か?身内っぽいな。
0097デフォルトの名無しさんNGNG
FireBirdはWinSock2が必要みたいだね
ところが古いWin95(WinSock1.1)へWinSock2を入れようとしたら
「WinSock2を入れるには1.7GB(!)必要だ、容量が足らん」
というたわけたメッセージがでてインストールできんかった

Win98へ上げるしかないか・・・
0098デフォルトの名無しさんNGNG
FireBirdのローカライズ版はこちらから。
http://www.twise.co.jp/pro.html

あと、こちらにIBの情報があります。
http://isweb1.infoseek.co.jp/~tmaki/index.html

MLはここ。
http://iblinux.rios.co.jp/
0099デフォルトの名無しさんNGNG
>>96
セールストーク以外の大受と付き合ってみればわかるよ....
なんであんなやつを野放しにしていたのか > 某
0100デフォルトの名無しさんNGNG
100げと
0101デフォルトの名無しさんNGNG
彼のHP見ても悪い人間には思えないのだが・・・
(しかしプログラムのプの字もないページだわ。)
0102デフォルトの名無しさんNGNG
なんで某がまともにPRしないかがわからん。いい商品なのに。
0103デフォルトの名無しさんNGNG
使いこなせる人間が少ないって事だろうな。
ACCESSと同じ感覚で買った人が失敗すると。(w
そういう厨房に対応するのが嫌だから積極的に売ろうとしない。

ORACLEに比べりゃ格段に簡単なんだけどねえ。
0104ななしぃNGNG
FIBPlus は無償なんでしょうか?
0105デフォルトの名無しさんNGNG
>>102
あくまで日本某がPRしてないだけで、外国では結構使われてるっぽい。
なんでだろう、日本のSIはどこもかしこもOracleべったりで、もう金かけてまで横取りする
パイもないと思ってるんじゃ無かろうか。

特にこれからの世の中、いままでコンピュータと付き合っていなかった中小レベルの企業が
システムを導入する機会は右肩上がりで増えていくと思う。
そういう案件でのInterBaseの価格と利便性と、長年実務で叩かれてきた信頼性ってのは他が
マネできないメリットだと思うのだけれど、素人考えなのかしら。

ところで、InterBase関係検索すると結構な確率でロシアのページが引っかかるのが意外。
0106デフォルトの名無しさんNGNG
たしかによく見かけるね、ロシア >> 105

案外ロシアではシェアNo.1のRDBMSだったりして。
0107デフォルトの名無しさんNGNG
isc_commit_transaction と isc_commit_retaining ですが、APIヘルプを読むと
isc_commit_retaining のほうが速度、リソース共に有利みたいなことが書いて
あります。常にコミット時は無条件に isc_commit_retaining を使用していれば
いいのでしょうか?

双方の利点、欠点など教えて下さい。
0108デフォルトの名無しさんNGNG
結構コアなネタが多くて、恐縮ですが、
InterBaseが使えるホスティングやレンタルサーバ会社って、ご存知ないでしょうか??
できれば、日本の業者が良いと思っております。海外でしたらいくつか存在しますよね。

1台丸々借りればよいのですが、金銭的に個人ではなかなか手が出るものでなく、
もう少し、リーズナブルなものを探しております。
ご存知の方がおられましたら、お知恵を拝借したいと思っております。
よろしくお願いいたします。
0109デフォルトの名無しさんNGNG
>>108
PostgreSQLあたりなら結構使わせてくれるところあるでしょ。
どうしてもInterbaseでないとダメ?
0110デフォルトの名無しさんNGNG
PostgreSQLやMySQLは、たくさんありますよね。
実際、今借りているホスティング会社さんはMySQLです。
別に不満があるとかではなく、社で使ってることもあって、InterBaseが好きなんです(^^;
(比較もしてみたいですしね。速度や使いやすさとか)

それで、情報だけでも・・・と思って、投稿しました。

#ほんと日本語情報は少ないですよね。
#BLOBを扱う時は大変でした(笑)
0111デフォルトの名無しさんNGNG
>>110の補足
言語はPHPでした。(^-^)
0112デフォルトの名無しさんNGNG
>>110-111
うーん、Firebirdが国内でもっと実績出してどこかが導入し出せば広まるのは
速いんだろうけど…まだまだ知名度が低いかな。

# PHPでBLOBでInterBase…?
# 最近某所でそんな質問見たような…
0113デフォルトの名無しさんNGNG
>>112
出ていましたね某MLで(w
でも、私が、ぶつかったのはちょうど1年程前の話しですから、記憶も薄く(ぉ
投稿した方に助言はできなかったんですけれども。(^^;

とりあえず、英語だろうとなんだろうと、必死でGoogleと戦った記憶があります(w

# Cが理解できれば、もう少しコアな話題にも参加できそうなのです。
# PHPのソースが解読できるようになれば、そこから切り崩せますし。
0114デフォルトの名無しさんNGNG
>>110
CobaltにはInterBaseモデルがあるから、Cobaltを使ってるところならたいていInterBaseのサービスもやってる。ただ1台まるごとってとこが大半。
http://www.din.or.jp/vds/
0115110NGNG
>>114
ありがとうございます。
そうなんですよねぇー。サーバ丸ごとだとあるんですよね。

ホスティングするとき、InterBaseだと管理しにくい事とかあるんでしょうかね。
0116デフォルトの名無しさんNGNG
>>115
データベースファイルをシステムのどこにでも配置できるから、却って管理しやすいことはあっても、管理しにくいってことはないでしょ。1データベース1ファイルだから、バーチャルホストでの容量管理もラク。知名度が低いってのが、唯一最大の欠点。
0117デフォルトの名無しさんNGNG
客先にプログラミングの分かる人がいれば
ボーランドの知名度はけっして低くはないので
「ボーランドのInterBase」といえば比較的信用してもらいやすいかも

俺の場合は「湾岸戦争で米軍が使った信頼性の高いDB」という謳い文句で
InterBase(FireBird)の使用を客先に納得させた
0118デフォルトの名無しさんNGNG
>>113
そのPHPなんだけど、interbase extensionの開発者が行方不明で、PHPがSEGVるバグが放置されたままなんだよな。
0119113NGNG
118>>
そういうのを修正できるだけの技量が欲しいです。
やはり、Cやらなあかんか(w
0120ReviewNGNG
IBPhoenix で 紹介されている管理ツールを一通り使ってみました。
日本語対応しているものは、一つもない。データを書き込むと文字化けして表示。
(DBにはきちんとデータが入っているが管理ツールがダメ。)
いちばん使いやすいのは ぶっちぎりで IBWorkBench デザインも綺麗で使いやすい。
値段は$180くらい。業務で使うのなら買っても損しないと思う。
IBWorkBench のサポートにE-mailで問い合わせたところ、次のバージョンで
中国語と日本語に対応することが決定しているらしい。少し待ちかも。ちなみに、FBをサポートしてる。

あと、ODBC関連もIBPhoenix、XTGと使ってみたけどAccessからは使えないみたい。
Twise Lab のODBCはAccessから利用できるので便利でした。

そんな感じです。
0121ReviewNGNG
75 も紹介していたけど Linux Bussiness Vol.3 のインターベースの解説は、
とっかかりに非常に良いです。昨日、本屋でたまたま見かけて買いましたが。
0122デフォルトの名無しさんNGNG
なんとなくFirebird(日本語版)入れてみたけどいきなりわからん
loginパスワードってどこに書いてあんの
0123デフォルトの名無しさんNGNG
IBだったら'SYSDBA' 'masterkey'がデフォだったかと。
(FireBirdは違うかかもなぁ。)
0124デフォルトの名無しさんNGNG
>>122-123
同じだよ
0125デフォルトの名無しさんNGNG
うぐぅ、masterkeyでだめだったぞ
つうかmasterkeyとだともどこにも書いてないぞ
0126デフォルトの名無しさんNGNG
>>125
おかしいな・・・
SYSDBA、masterkeyで間違いないけど

Caps Lockとか入ってない?
0127ReviewNGNG
120です。訂正。Marathon は日本語が文字化けしませんでした。
http://www.gimbal.com.au/

さらにフィールドの追加やデータ参照などが簡単にできるので、今のところ一番使いやすいと思われます。
あと、OpenSourceで無償で使えるようです。ライセンスはMPL。
0128125NGNG
Win再起動したらいけた、酢マンコ
0129デフォルトの名無しさんNGNG
InterBaseって、ある一定の回数のトランザクションを実行すると
自動的にガベージコレクション発動って勘違いしている人は結構多い。
普通にトランザクション開始、コミットしている分にはガベージコレクション
は発動しない。ちゃんとマニュアル読もう。
0130デフォルトの名無しさんNGNG
InterBase5の致命的な欠点。それは、大量のレコード(1000件程度)
をdeleteした後、そのテーブルに対してselectするとそのselectの
実行時間が絶望的に長くなること。通常1秒くらいで終わるselectが
30分以上かかったりする。どうもselectしたときに削除マークのついて
いるレコードをガベージコレクションしているみたい。システム組むと
きは要注意。InterBase6は知らない。
0131デフォルトの名無しさんNGNG
>>129
これやね。英語のマニュアルで読み下すのは大変だよぅ。
つーことでIB5のマニュアルから抜粋。

自動保守
アクティブな(未解決)状態のトランザクションを「懸案の」トランザクションと言い
ます。データベースのトランザクションインベントリで,「コミット済み」以外のステー
タスを持つ最初のトランザクションは,OIT(Oldest Interesting Transaction:最も古い懸案
のトランザクション)と呼びます。クライアントが新しいトランザクションを起動して,
トランザクション番号がOIT の番号を超え,ある閾値より大きくなった場合,InterBase
はデータベースの全面的なスイープを始めます。この閾値はデフォルトでは20,000 トラ
ンザクションですが,設定を変更できます(135 ページの「スイープ間隔と自動保守」を
参照してください。

ノート
20,000 トランザクションごとに自動的にスイープされるとは限らない,ということは微
妙ですが重要な特徴です。OIT と最新のトランザクションの差が閾値に達するときにだけ
スイープされます。データベースに対するすべてのトランザクションがすぐにコミット
される場合,この差は自動的なスイープの引き金となるほど大きくはありません。
InterBase サーバープロセスは,特別なスレッドを起動して,このスイープを不定期にコ
ミットします。その結果,クライアントプロセスは機能し続けることができ,スイープ
による作業量には影響されません。
0132デフォルトの名無しさんNGNG
gfixを夜間に走らせるのが吉。
0133デフォルトの名無しさんNGNG
>130-132
で、FireBird は大丈夫なの?よければ教えて。
0134デフォルトの名無しさんNGNG
>>130 詳細をキボンヌ
deleteした後で
 commitしてからselectした場合なのか
 commitせずにselectした場合なのか(普通こんなことする?)
回避の余地がないのかなど
 deleteの仕方でもいろいろあるはずだし・・・
 where句でまとめてばっさりとか、ループでcommitしながらしこしことか

とりあえず、自分でも試してはみるけど・・・
0135テッコイNGNG
とりあえず知ってる情報を集めてサイトを作りました。

http://www.infinity.ne.jp/~nakaoka/interbase/

どうか、もっと盛り上げてください。
0136名古屋在住・中日ファンNGNG
>>135 今、ちらっと眺めたけど
gds32.dllをただコピーするだけじゃ駄目だったと思うよ
最小クライアントでインストールするのが確実

また、WinSock2が必要だからWindows95だと駄目な場合がある

あと、Del6ProならローカルInterBaseが付いてくるから
IBConsoleでもデータベースの作成・管理ができたと思う
0137デフォルトの名無しさんNGNG
>>135
新入社員のやっつけ報告書みたいなページ…
きっとこれからがしがし更新されるんだよね。がんがって!

Marathonいいかなぁ…
全然バージョンアップしてないし、Open Source唄ってる割にどこにもソースがないし
頻繁に落ちるしですぐ捨てちゃった。
自分はMiTec IB Queryは使い勝手が良くてメインで使ってる。
0138デフォルトの名無しさんNGNG
>>134
やりかたは簡単。レコードがたくさんある(1万件程度)テーブルに対して、
delete from テーブル名
whereを指定してもよいけど、とにかくたくさんdeleteされるように。
そのあと、そのテーブルに対して
select count(*) from テーブル名
別にcount(*)でなくてもよい。ちょっとシステム組むのにためらいを
感じる結果になる(バッチ処理なら問題ないかも)。回避方法は、一度に
たくさん消さないことかなぁ。早めに気がついて本当に良かった。
InterBase5の話ね。InterBase6は知らない。
0139名古屋在住・中日ファンNGNG
>>138 レスどうも

今、FireBirdでやってみたところ
1万4000件あるデータから1万件まとめて(where句で)削除した直後の
select count(*) from テーブル名
は一瞬で処理されたよ
(1万4000件のデータを書き込むのには少し時間が掛かったけど)

ただ、30の書き込みを見て気になったのは
「削除マークのついているレコードを」の部分
DBの実装の話ならそのとおりだろうけど
まさかdeleteの直後に
select文をdeleteに対するcommitなしで発行したっていうことではないですよね
だとすると、DB設計者からすれば想定外の使い方かも知れないと思ったりする
(漏れにも今までにそういう使い方をしなければならなかった経験はないし・・・)

ま、普通に考えればIB6やFireBirdでは直ってるということでしょう
(もしかするとIB5でもパッチで修正されてるのかも)
0140デフォルトの名無しさんNGNG
ん〜
削除した後コミットしたの?主キーのあるテーブルなの?
マシンスペックはどのくらいの物だったの?
ネットワーク環境は?パラメータブロックの設定は?

それらによって結果は全然変わってくると思うのだが・・・
0141名古屋在住・中日ファンNGNG
正直なところ
DBにとって千件・万件はさほど「たくさん」という量ではないということ
その程度で変な動作をするとは考えにくいんだよね

30=138さん、よほど奇特な使い方をしたのではと思ったりする
0142名古屋在住・中日ファンNGNG
×30=138さん
○130=138さん
0143テッコイNGNG
>137

経験が浅いので
日本語が文字化けしないMarathonが便利だなぁと思っただけで。

IBPhonix のページから、
MiTeC InterBase Query をダウンロードしようとしたんですが
リンクが切れているみたい。

ダウンロード先わかりますか?
0144テッコイNGNG
ところでFirebird には、IB のような Install API はないのですか?
0145デフォルトの名無しさんNGNG
>>139
どうやらIB6とかFireBirdではそのへん改善されてるようですね。
やれやれ。まあInterBase5のあの仕様じゃぁ使い物にならないって。

ちなみにそれぞれのSQLの実行前にset transaction、実行後にcommitした
ときの話ね。主キーも外部キーも設定してない。ブロックサイズを変化
させたけどぜんぜん変わらなかった。
0146デフォルトの名無しさんNGNG
>>143
ここが本家かな?
http://www.mitec.d2.cz/

漏れもちょっくら試してみようっと。
0147デフォルトの名無しさんNGNG
http://japan.internet.com/linuxtutorial/20020405/1.html
0148デフォルトの名無しさんNGNG
C# + FireBird ってできる?
0149デフォルトの名無しさんNGNG
>>147
産休
0150デフォルトの名無しさんNGNG
>>148 事故レス
サーバーエクスプローラからは接続してデータを所得することもできるので
なにか方法はありそうなんだけど・・・
(VS.NETは遅まきながら今日触ったばかりだし気長にやりますか)
0151テッコイNGNG
今日 Delphi 6 Pro 買いました。

フォームに、DBGrid 乗っけたアプリをさくっつと作ってみて
アプリと GDS32.DLLを一緒に別のパソコンにコピーしたら問題なく動きました。

クライアントはGDS32.DLL さえあれば動きそうです。配布が楽だなぁ
0152デフォルトの名無しさんNGNG
>>147
情報ありがとさんだけど、ひでえ訳だな。元原稿読の方を勧める。
http://www.ibphoenix.com/ibp_act_db.html
0153テッコイNGNG
訂正。

151の方法で動いたけれど InterBase 5.5 のマニュアルによると最小クライアントインストールは以下のとおり。

Minimum client installation
The minimum set of files necessary for client operation are:
・ %INTERBASE%\IB_LICENSE.DAT
(see “Installing software activation keys” on page 13)
・ %INTERBASE%\INTERBASE.MSG
(see “Installing GDS32.DLL and INTERBASE.MSG” on page 12)
・ %SYSTEM32%\GDS32.DLL
(see “Installing GDS32.DLL and INTERBASE.MSG”)
・ %SYSTEM32%\MSVCRT.DLL

FireBird の場合 License.dat は要らないので、必要なのは gds32 と interbase.msg と msvcrt.dll だけということだとおもう。

ソースは、
http://www.borland.com/techpubs/interbase/
の InterBase 5.5 Embedded Install Guide (0.37mb) の13ページ。
0154デフォルトの名無しさんNGNG
InterBaseもDelphiで書いて欲しいです。
0155テッコイNGNG
>Hello . I am Japanese . build C/S Sytem in japan.
>
>Please Teach me Answer "Firebird Minimum Client Install"
>
>1.gds32.dll
>2.interbase.msg
>
>I think needs 2 files. This Think Is OK ?
>setup complete these 2files and my application copy to other pc ?

also in HOSTS file:

111.111.111.111 MyHost #Firebird server

^^^^ server's IP address


>I am Studying English now. sorry.

your English is OK :-)


>thank you for reading my-email.
>When you can find the time , would you reply my message, please?

Next time - send questions to ib-support

subscribe at http://www.yahoogroups.com/community/ib-support

Kia ora!
Helen (mail admin)

All for Open and Open for All
Firebird Open SQL Database · http://firebirdsql.org ·
http://users.tpg.com.au/helebor/
0156デフォルトの名無しさんNGNG
とりあえず、age

広まれー!!FireBird!!
0157中日ファン@地方巡業中モード ◆DRAG8zBg NGNG
>>156
早く.NETでも使えるようになるといいね
(今のところどうやってもうまくいかないです)
0158デフォルトの名無しさんNGNG
とりあえず、Windows系、PC-UNIX系、両方のユーザーが使いやすいDBになってほしいですよねぇー。

そうすれば、皆、仲良くFireBirdが使える(^^)
0159デフォルトの名無しさんNGNG
Del6 で InterBase 使ってるとこなんすけど、
TDataSet の Filter だと検索値に漢字を使うとエラーが出て、
Lookup だと検索値に漢字を使ってても通るってことあります?
いや、手元でそういう現象が起きてて理由がさっぱり分からず・・・。
ちなみにエラーメッセージでは cannot transliterate character sets なんて言われます。
おしえて偉い人!
0160デフォルトの名無しさんNGNG
Firebird・・・なんか将来的に不安があるような気がする、いや気がするだけだけど
0161テッコイNGNG
>159
よく知らないけど、CharacterSet は何を指定してるの?SJIS_0208?

Delphi 6 と IBX で問題なく Firebird が使えるはず。(そう、信じている。)

Firebirdに足りないのは機能じゃなくて、使う人たちだとおもう。使い込んで日本語情報をためていこう。
0162159NGNG
>>161
レスさんくすこ。
IB6 で SJIS_0208 使ってます。
isql で SET NAMES するのに相当する
プロパティとかメソッドがないかと思って
探してみたんすけどそれも見つからず。
エラーメッセージ自体は、isql で SET NAMES を忘れたファイルを
食わせた時に出るものと一緒なんです。今現在お手上げの状態です。
0163デフォルトの名無しさんNGNG
>>160
そうかぁ?むしろ商用に戻ったInterBaseの方が不安だろ。
160のFirebirdへの不安と言うのはオープンソースへの不安なのか?
0164デフォルトの名無しさんNGNG
>>160
その不安を解消していけるのがオープンソースのいいところ(^^)
0165デフォルトの名無しさんNGNG
そうかぁ?混沌に投げ込まれただけでは?
データベースとしてのバリデーション、どうするのよ。

FireBird プロジェクトの最大の課題である バグだし / QA 作業をほったらかして
議論するのはちょっとずるいぞ。
0166デフォルトの名無しさんNGNG
FireBirdいい感じage
0167デフォルトの名無しさんNGNG
D6 personalでも使えるデーターベースコンポーネント

IB Objects
http://www.ibobjects.com/

ODBC Access for Delphi
http://home1.infonia.ne.jp/~delphian/delphi/
0168デフォルトの名無しさんNGNG
>>161
スレ伸ばしたいなら名無しに戻れ。

あと
> Delphi 6 と IBX で問題なく Firebird が使えるはず。(そう、信じている。)
> Firebirdに足りないのは機能じゃなくて、使う人たちだとおもう。使い込んで日本語情報をためていこう。

こういう盲目的で無根拠で両手を挙げてマンセー的な発言もやめとけ。
仕事柄その手の発言が嫌いな奴は大勢いる。漏れもな。
0169159NGNG
自己解決しますた。
接続パラメータの lc_ctype が SET NAMES 相当品でした。
結局 google で偶然に某MLの過去ログがヒットして判明。
あとからヘルプで lc_ctype をテキスト検索すると片隅に・・・。
0170デフォルトの名無しさんNGNG
superserverってアクセス制限どうすればいいの?
そのままだとどこからでもアクセスできちゃいますよね?
0171デフォルトの名無しさんNGNG
>>170
Networkのsegment(sub network)切ってそこに閉じ込めるとか。駄目?
0172デフォルトの名無しさんNGNG
>>170
Linuxとかなら、ホストレベルのパケットフィルタリング。
0173デフォルトの名無しさんNGNG
無料でDBアプリを配布したい場合
BCBで開発したものを配布してオープンソースのIB6をインストールすればよいの?
0174デフォルトの名無しさんNGNG
みなさん嘘つきですね。
このスレ見てスイーブっていうのやってみたけど全然ファイルサイズは小さくなりませんでした。
だまされましたよ。
0175某乱堂NGNG
スイープではファイルサイズは小さくならない。
削除レコードの領域が再利用出来るようになるだけ。
バックアップからのリストアなら小さくなる。だが
とうぜんスイープより時間がかかる。

Accessのmdbと勘違いしてないか?
0176デフォルトの名無しさんNGNG
バックアップ、リストアってどうやってするの?
0177デフォルトの名無しさんNGNG
>gbak -b data.gdb backup.gbk
>gbak -r backup.gbk data.gdb

コマンドライン使えんならIBConsole使え。
0178170NGNG
>>171-172
サンキュス。
サブネットって勝手に切っても大丈夫?
Linuxだけどパケットフィルタリングなんて大変なことしなきゃだめ?
パケットフィルタリングッテ良く分からないけど。。。

例えばゲートウェイ(えらい管理人さんが管理してる)ではポート
塞いでもらっておいて、内部からはそのポートへも
アクセスできるっていうので大丈夫なのかな?
みんなどうやってるの?
0179デフォルトの名無しさんNGNG
>>178
今時のUNIX系OSなら/etc/hosts.allow,/etc/hosts.denyファイルに
port number: network address(ゾーン又はホスト単位)を記述して
接続の許可、拒否を行えます。調べるならキーワードはTCP_Wrapperなど。

物理的にネットワーク・セグメントを切る場合、自分自身が組織全体の
管理を行っているなら勝手にやって構わないでしょう。
自分に構成を変える権利が無い or 他に管理するメンバーがいる場合は
変更したい理由を添えて協力を仰ぐのが筋じゃないでしょうか。

絶対に外部へ漏れてほしくない場合は、グローバルなネットワークから
そのゾーンだけ物理的に切り離してしまう解もあり。
0180デフォルトの名無しさんNGNG
すいません超初心者です。
InterBaseっていう独自の優越感にお邪魔します。
InterBaseって、sybaseみたいなもんだよね、ところで普通は、インターネットとは一緒にしないと思います。
>>1
0181デフォルトの名無しさんNGNG
ばかこくでねえ。パケットフィルタリングとTCPラッパは全くの別ものじゃ。>>179

Linuxならipchains、iptablesでGoogleしてみよ。>>178
0182デフォルトの名無しさんNGNG
>>180
その通りだ。インターチェンジとホームベースを一緒にしてはいけない。

だが、話題は既にFirebirdに移っているため、そんなことはどうでもいいのだ。
0183意地悪い人=179NGNG
>>181 あー!なんでばらしちゃうんだよ 人の楽しみを(略
0184デフォルトの名無しさんNGNG
>>183
必死だな。
0185デフォルトの名無しさんNGNG
>>120 まだココ来てる?
XTG ODBC 1.0.0 beta 15 + Access97 SR-2
Interbase6.0.1 , Firebird1.0 双方とも接続できたんだけど
その使えなかったというAccessのversion教えてほしいのだが・・・
0186デフォルトの名無しさんNGNG
InterBaseとFirebirdどっちを使えばいいと思う?
0187デフォルトの名無しさんNGNG
Fireには日本語版がある
0188デフォルトの名無しさんNGNG
Win95時代の古いPCからだとFirebirdへの接続するのにえらく時間が掛かるけど
(一旦接続できてしまえば、データのやり取りは支障ない)

誰か対策知ってる?
0189デフォルトの名無しさんNGNG
ネットワークのホストを探すのに時間かかってない?
ネットワーク関連のドライバをチェックしてみるとか
HOSTSファイルにサーバーのIPアドレスを記述してみるとか。
0190デフォルトの名無しさんNGNG
>>189
レス、どうもです
早速試してみます
0191デフォルトの名無しさんNGNG
>>64 でも言われていますが、Interbaseが有償に戻った場合
現在、オープンソースで無料で使用可能な InterBase6 や
Firebird にどういう影響がでるのか心配です。
無料で商用利用できなくなる可能性はあるのでしょうか?
ライセンスに詳しい方いますか?

http://www.borland.com/devsupport/interbase/opensource/IPL.html
0192デフォルトの名無しさんNGNG
オペンソースになった時点でそのソースはもう大丈夫。
だからFirebirdは大丈夫。
ただし今後InterbaseとFirebirdは互換性を失なっていく
可能性は大きい。

って事でOK?
0193デフォルトの名無しさんNGNG
ボーランドが販売しているInterBase6.xはソースコード非公開の有償版ですけど。>>191
0194ansiNGNG
JDBC2.0対応のカーソル対応のドライバってあるの?
0195デフォルトの名無しさんNGNG
JAVA方面はよう知らんのだけど、SourceForgeにアップされているFirebirdSQL-1.0_beta_1.zipっつーのはダメなの?
0196デフォルトの名無しさんNGNG
>>195
Thanx
InterClientってだいぶバージョンあがってたんだね
0197デフォルトの名無しさんNGNG
Firebirdなんだけど、FreeBSDで使ってる人います?
Portsから入れようとすると、途中でこけるんですが。
0198デフォルトの名無しさんNGNG
>>197
こけた時のメッセージきぼん。
0199デフォルトの名無しさんNGNG
>198
新しいバージョンになっていたから
大丈夫かな〜っとおもったけど、やっぱりだめでした。
こんな感じです。

-------
source/interbase/bin/gbak -c misc/metadata.gbak /usr/ports/databases/firebird/work/refDatabases/jrd/metadata.gdb
can't format message 12:256 -- message system code -4
operating system directive semget failed
can't format message 12:256 -- message system code -4
No such file or directory
can't format message 12:256 -- message system code -4
can't format message 12:33 -- message system code -4
can't format message 12:169 -- message system code -4
can't format message 12:83 -- message system code -4
*** Error code 1
Stop in /usr/ports/databases/firebird/work/firebird-1.0.0.796.
*** Error code 1
Stop in /usr/ports/databases/firebird.
--------
FreeBSD4.5です。
0200デフォルトの名無しさんNGNG
>>192
>>193
ありがとうございます。
既にオープンソース化されている
InterBase6.01 は、今後InterBase6.x以降が
有償のままオープンにならなくても無償で
使用でき、FireBird も無償で使用できる上
独自に拡張できるわけですね。
0201デフォルトの名無しさんNGNG
Interbase/FirebirdってODBC使えますか?
特にBLOBなんかが心配なんですけど。
0202デフォルトの名無しさんNGNG
ODBCぐらい使えるだろ
0203デフォルトの名無しさんNGNG
>>201
わしはこれだけ確認した。
XTG ODBC 1.0.0 beta 15
Access97 SR-2
Access2002 SP1
BCB5 + BDE5.2

あなたがどこまで品質要求するのかわからんから、あとは調べてちょ
0204199NGNG
>199のやつ、自己解決。
どうやらPostgresが共有メモリを食いつぶしていたのが
原因らしいです。
0205デフォルトの名無しさんNGNG
>>203
感謝です。
単純なテーブルしか使っていないし
selectさえできれば良いので大丈夫そうですね。
後は試してみます。

0206nanasiNGNG

>185
120です。再度チャレンジしたところ、
XTG1.0 Beta15 + Access2000でつながりました。日本語もOKでした。

ODBCの設定をファイルデータソースにするか、
コンピュータデータソースにするかで、ファイルにすると接続できないようです。

コンピュータデータソースで指定したら上手く行きました。
情報、サンクス。
0207デフォルトの名無しさんNGNG
FireBirdってデータベース(ファイル)越しのクエリ使えないの?
Accessの"IN"みたいな構文ってないのかなぁ・・・
0208デフォルトの名無しさんNGNG
debian sid に firebirdが入りました。
0209デフォルトの名無しさんNGNG
IB6 オプソ版+IBX on Del6を使ってるんですが

write,nowait,concurrency,protected,lock_write=MYTABLE

というパラメータで2つのトランザクションを開始しても衝突してくれません。
これは isql 上での

SET TRANSACTION READ WRITE NO WAIT SNAPSHOT RESERVING MYTABLE FOR PROTECTED WRITE

とは違うのでしょうか?
isql 上ではこのようなトランザクションは衝突してくれるので
それを期待しているのですが・・・。
0210209NGNG
解決しました。パラメータの指定順序の問題でした。以下が正解なんですね。

write,concurrency,nowait,lock_write=MYTABLE,protected

マニュアルに記載されているものとは何故か順序が逆になっているようです。
こんなことで8時間も使ってしまった・・・。
0211デフォルトの名無しさんNGNG
保全age


ところでFirebird1.0だとデータベースパスに日本語通らないが
IBもそうなのか?

ソース見てないんだがSJIS->EUCのせい?
0212デフォルトの名無しさんNGNG
>>211
フィールド作成するときやconnectするときにキャラクタセット指定してんのか?
0213デフォルトの名無しさんNGNG
>212
>211が言ってるのは .gdb ファイルのパスの事だと思われ。
0214211NGNG
>>213
そうだす。

Marathonかなり使えるんだがよく例外発生するな。
日本語版ホスィ・・・
0215デフォルトの名無しさんNGNG
これは?
http://www.twise.co.jp/download.html
0216デフォルトの名無しさんNGNG
>>211
IB5.6ですけどGDBファイルのパスに日本語通ってます
0217211NGNG
>>216
そーなんですか。アリガトン。
予算があればIB使えるんだけど・・・

FB修正してバックポートする気力も無いし(鬱
0218デフォルトの名無しさんNGNG
>>217
http://www.ibphoenix.com/ibp_interbase_download.html

Open Source Interbase ってのもあるみたいです。
試してないですけど。。。
0219デフォルトの名無しさんNGNG
下記参照>>218
http://slashdot.jp/~yasusii/journal/
0220デフォルトの名無しさんNGNG
>>219
??
どういうことですか?
0221デフォルトの名無しさんNGNG
>>220
??
何が?
0222デフォルトの名無しさんNGNG
>>221
Open Source Interbase にはバイナリ版があるんですけど…
0223デフォルトの名無しさんNGNG
>>>222
ますますわからん。
Borlandが公開しているソースそのままではビルドできんというのは事実だが、そのこと言っとるのか?
0224デフォルトの名無しさんNGNG
IB/FBってデータベース(ファイル)単位のセキュリティってないのれすか。
Accessのパスワードみたいなやつ。
せっかくDBもアプリも配布しやすいRDBMSなのに・・・
0225デフォルトの名無しさんNGNG
>>224
へ?
0226デフォルトの名無しさんNGNG
>>224
は?
0227224NGNG
ん?なんか変なこと書いた?
0228デフォルトの名無しさんNGNG
>>227
ほおお。
0229デフォルトの名無しさんNGNG
>>227
ほほう。
0230224NGNG
うええん、みんなしていぢめるう。
0231デフォルトの名無しさんNGNG
いや、俺も224と一緒で、
ファイル単位でのセキュリティって思いつかないんだけど(@InterBase)。
サーバー単位でユーザーアカウント作ってGRANT/REVOKEしてってのは分かるけどさ。
そのユーザーアカウントをDBファイルの方に入れる方法ってあるの?
0232デフォルトの名無しさんNGNG
>>231
そうなのよ。
運用鯖でバリバリにユーザー管理してもファイルコピーして
インストール状態のIB/FBに持っていくとsysdbaでデータ見られてしまう罠。

機能的にはあってもよさそうなんだけど、どっかのベンダとかが出してないのかな〜

せっかくのオプソなんで時間&スキルあればそーいうExtensionとか
実装させてみたいと思うんだけど・・・

つかFireBirdってなんでコンパイラVCなのよ?
0233デフォルトの名無しさんNGNG
>>232
元のInterBaseがVCで書かれていたから。
InterBaseがBorlandの製品になる前にMS-Cで書かれてたからかな?
FireBirdもVCに依存する部分をこれから無くしていくんじゃなかったけ。
0234デフォルトの名無しさんNGNG
>>224>>231>>232
Access みたいにローカルで運用するもんじゃないから。

> インストール状態のIB/FBに持っていくとsysdbaでデータ見られてしまう罠。
見られたくないDBを何で持っていく?
0235デフォルトの名無しさんNGNG
>>234
他のRDBMSだと程度の権限がないとよそへデータを持っていったり(エクスポートしたりとか)
することができないけど、IBだとファイルコピーされたら終わってしまうというのがなんとも・・・

>見られたくないDBを何で持っていく?
今考えてるのは組み込み用途みたいなローカル限定の環境で使えないかなというところで考えとります。
せっかくファイルベースのRDBなんだからファイル単位のセキュリティがほしいなということで。

「用途/目的が違うから」の一言で済ませてしまうにはおしいな・・・
0236デフォルトの名無しさんNGNG
何がしたいのかさっぱりだが、SYSDBA削除しとくかパスワード変えとけば
いいって話じゃないのか?
0237デフォルトの名無しさんNGNG
>>235
>IBだとファイルコピーされたら終わってしまうというのがなんとも・・・
これは運用でカバーするしかないね。
Win2KやUnix系ならOSの機能使って対処すればいいと思うよ。
パーミッション設定して他人から見えないようにするとかして。

>>236
SYSDBA 削除したらまずいだろ。管理できなくなるよ。たぶん。
パスワード変えようが意味ない。
ユーザ情報はサーバにある isc4.gdb で管理しているみたいだからね。
231の言うようにDBファイル自身にユーザ情報が入れれれば確かに
いいような気がする。ただそうなると、管理者でさえそのDBにアクセス
できなくなってしまうから、まずいのかな?
(一応管理者はすべての権限があるという前提で言うと)
0238デフォルトの名無しさんNGNG
>>237
クライアントの接続文字列にDBへのパスが含まれるから
そこから所在がバレそうだね。
0239デフォルトの名無しさんNGNG
なんなんだろう?
みんなが何を心配しているのか見当がつかない。

>>235
なんで見られるとマズイ?
データが外に漏洩したのとは違うし、見られてまずいことなど何もないと思うけど。

>>238
所在がばれると何か問題なの?
所在がばれた程度でデータ盗まれるような管理してることの方が余程問題でしょ?
0240デフォルトの名無しさんNGNG
>>238
DBパスはばれても、要はGDBファイルはコピーできないようにしておけば問題ないよね?

>>239
>なんで見られるとマズイ?
何らかのミスがあって、GDB ファイルが外部に持ち出されてしまいました。
ってときに、GDB ファイル単位にパスワードとか設定できるのであれば、
例え外に持ち出されてもパスワードまで漏れなければ中身を見られることは
まずないよね。
0241デフォルトの名無しさんNGNG
ええい、こうなれば暗号化BLOBフィルタ自作しる。
0242デフォルトの名無しさんNGNG
>>240
ファイルが読めりゃ、パスワードなんか分かんなくたって、いくらでもデータを読む方法あるでしょ。
0243デフォルトの名無しさんNGNG
>>242
データ自体を暗号化すればいいんでは。
パスワードを暗号キーとするとか。
0244デフォルトの名無しさんNGNG
>>243
某のところにもそんなの書いてあったな。
プロトコル/データを暗号化してしまえばいいんだろうが
どっかにミドルウェアないかな(w
0245デフォルトの名無しさんNGNG
こんなの見つけた。

http://www.delphi32.com/vcl/4808/
0246デフォルトの名無しさんNGNG
パスワードでガチガチなのも困りよう。
(BackDoorセキュリティホールは痛かったけどな。)
http://www.zdnet.co.jp/news/0206/12/ne00_museum.html
0247デフォルトの名無しさんNGNG
Firebirdの本って出ないのかな?
WEB+DBの加藤さんの記事だけだよね。
0248デフォルトの名無しさんNGNG
オープンソースになったんだから
もう少し露出があってもいいんだがなあ>firebird

0249デフォルトの名無しさんNGNG
誰かユーザーグループかメーリングリスト立ち上げないかな。
0250デフォルトの名無しさんNGNG
結局日本語だけのコミュニティで出来る事って限られてるって
事なんでしょう。
0251デフォルトの名無しさんNGNG
せっかくいいもんがオープンソースになったんだから
もうちょっと知名度が出ても良いと思うんだけどね。
牽引者がいないのがつらいところだわなあ
0252デフォルトの名無しさんNGNG
そういうことはageで言え!
0253デフォルトの名無しさんNGNG
>>251
なんと
日系オープンの7・8合併号に
オープンソースDBMSとしてMySQLやPostgreSQLと一緒に
出てる
内容はただの照会程度
0254デフォルトの名無しさんNGNG
日経オープンシステムだろうが>>253
0255デフォルトの名無しさんNGNG
紹介だろうが>>253
0256***NGNG
日系ソフトウェアで、BDEの開発停止、今後はInterBaseを推奨、みたいな記事をちらっと見たんですが、はっきり言って、del使いにとって、この影響はどのくらいなんでしょうか。
また、InterBaseってのはどのくらい良い/悪いDBMSなんでしょうか。

私的には、資料が皆無に等しいというのが欠点に見えるのですが。
0257デフォルトの名無しさんNGNG
>>256
一般的なSQLの知識があればあとはヘルプを見ながらなんとかなるよ

Delphiの場合
IBTableは使わないほうが無難だけど(俺は代わりにIBDataSetを使ってる)
0258デフォルトの名無しさんNGNG
んvbんv
0259デフォルトの名無しさんNGNG
>>257
禿同。IBTableはかなり危険だ。

>>256
BDEはあまり好きじゃないんで最近はdbExpressとADOばっか使ってるが
ADOあればBDEいらないんじゃないかな〜と思う。
なんだかんだいってもADO楽チンだし。

資料は付属のマニュアルでほとんど間に合ってる。
(いい意味で)低機能RDBMSなんであまり悩むことがないかな。


ところでIBのOLE DBドライバ(っていうのか?)って
http://www.oledb.net/
以外にない?
商用利用できるのがほしいんだが・・・

BorlandはOLE DBドライバ配布しる!
0260デフォルトの名無しさんNGNG
>>259

> 禿同。IBTableはかなり危険だ。

これはどうしてでしょう?教えてたもれ
0261デフォルトの名無しさんNGNG
IBTableをOpenするのは
SELECT * FROM テーブル名
と同じだから、無駄なデータがイパーイ流れたりする

ましてや、Paradoxのテーブルと同じようなつもりで扱うと
凄まじい量の問い合わせが発生したりする
(初めて使ったとき計算項目で他のテーブルを参照してエライ目にあった)

ま、おいらがヘタレなだけかも知れんけど
0262デフォルトの名無しさんNGNG
IBTable ってリークしてない?
0263デフォルトの名無しさんNGNG
>>260
参照オンリーだとあんまり問題でないが、更新したりするとFetchしなくなったりすることが多い。
DataControlとかと一緒に使うと挙動不審なところがある。
(入力値が反映されなかったりとか)

全体的にTIB〜は他のTDataSetを継承したクラスと実装が微妙に違うっぽい。
(ソース追ったわけではないが)

FilterとIndexはちゃんと動くんでそっちを多用する場合は(フィルタ&ソートとか)
TIBTableのほうが使い勝手がいい。

あとは>>261のとおりパフォーマンスの面がけっこう大きい。

TIBTableが危険だっていうのMLのログで見たような・・・
0264サプリNGNG
ターボチャージは、極度な時にも最大限の力を発揮したい人
に頼りになる栄養補助食品です。締め切りが迫っている、
今晩中にあるいは翌朝までにやり遂げなければならない時に
頼りになるハーブ食品
www6.ocn.ne.jp/~beauty-s/index.htm
0265デフォルトの名無しさんNGNG
サーバが変わると順番も変わっちまうからな
倉庫落ち阻止上げ
0266デフォルトの名無しさんNGNG
危険というか、SQL 使う意味が無くなることが一番の原因では?
>>261 で指摘されているように、基本的にサーバのデータをローカルに
コピーすることになるから。

実際には(SQL サーバーを参照する)TTable にしろ TIBTable にしろ
いくつかの負荷減少コードが実装されているが、程度の問題に過ぎない。
0267デフォルトの名無しさんNGNG
>>266
>危険というか、SQL 使う意味が無くなることが一番の原因では?

SQLを使わなくてもいいようにラップしてくれるのがTDataSetなんですが・・・
0268デフォルトの名無しさんNGNG
メーリングリスト作ってよ誰か。
あとさぁ、だれかソースハックしてる人いる?
手を入れやすい?
0269デフォルトの名無しさんNGNG
リオスのメーリングリストならあるよ。
InterBase4をLinux/FreeBSDにポートした人たちもいる。
http://iblinux.rios.co.jp/
今のFirebirdのソースを追っかけてるかどうかわからないけど、
アドバイスはもらえるんじゃない?


0270デフォルトの名無しさんNGNG
>>268
ちろっとしかソース見てないが
Win版は環境つくるのがめんどかったような・・・
VC++とBCC使うんだっけ?
0271デフォルトの名無しさんNGNG
FireBird最新版(1.0)に上げたら、今まで使ってたIB Consorlが使えなくなってしまいました。

Windows環境から、IBサーバをGUIな環境で見てらっしゃる方はいらっしゃいますか??

ODBC + MS Accsess
ODBC + WinSQL
と試してみましたが、IBコンソールほど、使い勝手がよいとも言えず、
模索中です。

# ODBC接続だったらDB毎にODBCで接続してやらないといけなくて・・・
0272デフォルトの名無しさんNGNG
OpenOffice/StarSuiteは使えんのかな。
0273デフォルトの名無しさんNGNG
>>271
Marathonがかなりお勧め

http://gmarathon.sourceforge.net/
0274デフォルトの名無しさんNGNG
>>271
>FireBird最新版(1.0)に上げたら、今まで使ってたIB Consorlが使えなくなってしまいました。
普通に使えてますけど・・・OSはWindows 2000とXP
0275274NGNG
修正、XPは未確認でした
0276271NGNG
>>274

ログインしようとすると

Cannot attach to services manager
Services functionality will be supported in a later version of the product

と表示されてしまうんです。
ちなみに、Win2000です。
コンソールは、1.0.0.327Jです。

どこか設定ミスでしょうか。
0277274NGNG
>>276
自分のバージョンは1.0.1.335JP Fix01(多分Del6についてたもの)です

バージョンアップで解決できそうですね
0278271NGNG
ありがとうございます!

ちなみに、Del6は、Professional以降ですよね??
Personalしか持っていないので、やっぱ、お金かけないとダメですね。
使いやすさを求めるなら。(T_T)
0279271NGNG
1.0.1.335JP Fix01で試してみました。
しかし、やはり同じエラーが発生しました。

ちなみに、Borlandからダウンロードできました。( 278は無視してください(w )

# まだ、何かあるのかなぁー
0280271NGNG
自己解決してしまいました。

Clasicサーバーじゃ、使えないんですね。。。スマソ
0281デフォルトの名無しさんNGNG
今日はじめてIBAccessを使ってみた・・・感動しました。
IBConsoleよりも使い勝手いいかも。
0282デフォルトの名無しさんNGNG
どういうところが使い勝手が良いと思われました??
0283デフォルトの名無しさんNGNG
>>273で挙がってるけど
marathonのほうが上だと思うんだが・・・
0284デフォルトの名無しさんNGNG
firebird日本語版のデフォルトのadminの名前とパスって何?
SYSDBA/masterkeyでログインできないんだけど。
0285デフォルトの名無しさんNGNG
私も FireBird 日本語版使用してますが、login のデフォルトパスワードは、
'SYSDBA'
'masterkey'
で login できています。
0286デフォルトの名無しさんNGNG
InterBaseのODBCドライバーやユーティリィティのリンクです。
ttp://www.cvalde.com/misc/packages_and_utilities.htm
0287デフォルトの名無しさんNGNG
Linux版だとスーパーユーザーしかDBAでログオン出来ないんじゃ?
違ったっけ?(そもそもプロセス落ちてるとか。)
0288デフォルトの名無しさんNGNG
284>>
アカウント管理用のDBが無いとか(^^;
0289デフォルトの名無しさんNGNG
これか・・・( ゚д゚)ポカーン
http://ex.2ch.net/test/read.cgi/nanmin/1028974649/l50
0290デフォルトの名無しさんNGNG
>>462
いや、これだ
http://2style.net/maido/R3_temp.swf?inputStr=%83q%83%87%83f%81%5B%83C%81I%81I%81I%81I
0291デフォルトの名無しさんNGNG
C++Builderで開発したプログラムからInterBase6.01を利用してるんだけど、
アクセス負荷をかけると 'lock manager out of room'  ってエラーが
出ちゃいます。

isc_configのV4_LOCK_MEM_SIZEを増やしてみたら改善はしたけど、
まだ現象は出る・・・。これって、何がまずいんですかね? 
プログラムのせい?
0292デフォルトの名無しさんNGNG
273>
283>
Marathon すごい高機能ですね!感動しました!
IBConsoleより、よっぽど便利な気がするのですが・・・
0293デフォルトの名無しさんNGNG
>>291
OSは?SuperServerか?
0294291NGNG
RedHat6.2です。
0295デフォルトの名無しさんNGNG
>>294
だからよー、SuperServerかって聞いてんの。
0296294NGNG
>>295
違います。SuperServerではないです。
0297デフォルトの名無しさんNGNG
FireBird Serverで、IPでのアクセス制限ってかけられましたっけ?
OS(LinuxやWin2000)で、制限しないとダメでしたでしょうか?

環境:Windows2000,FireBird1.0,Apache2.0.35
0298291NGNG
間違えました。RedHat6.2じゃなく、7.2です。
0299デフォルトの名無しさんNGNG
ただ単に「負荷をかけたら」じゃ誰も何もわからないぞ。
具体的な内容を示せ。
V4_LOCK_MEM_SIZE 変更して、改善されたのか?
じゃ値をもっと大きくするとどうなる?
場合によってはLinuxカーネルの方もチューニングする必要あるかもしれんぞ。
http://www.ibphoenix.com/ibp_sem_sm.htm
>>298
iblinuxメーリングリストでも同じこと質問してるだろ。
答えが欲しいなら、ちゃんとした情報を付けて
メーリングリストの方に出し直せ。
0300300NGNG
300get
0301デフォルトの名無しさんNGNG
>>300
キリバンゲット代金として一万五千円いただきます。
0302デフォルトの名無しさんNGNG
Firebird使ってみたいんですが、Delphi5からFireBirdを使うには添付のinterbase用コンポーネントで大丈夫なんですか?
0303デフォルトの名無しさんNGNG
>>302
ダイジョーヴイ
0304303NGNG
あ、でも漏れはDel6だった
0305デフォルトの名無しさんNGNG
Del5でもOK
0306InterBase初めて使うNGNG
フルLinuxベースで、
InterBaseをDBにしてシステム組んでますが、問題にぶちあたりますた。
JDBC系(Javaサーブレットから)、とそれ以外(主にkylixアプリ)、
の二系統から同時に接続しています。

JDBC系でデータ更新すると他のJDBC系の接続ですぐ更新したデータを見れるのに
JDBC以外の接続から見るとデータが更新されてなかったり(遅れて更新されたり)
それ以前に、片方が接続していると、もうかたほうの系統が接続できなかったり
する事もあるし、もうわけわかりません。

同じような体験してる人いますか?
0307デフォルトの名無しさんNGNG
サーバー側のJDBCドライバで更新がキャッシュされてるっぽく
ないですか?Kylix側はdbExp.だからGDS直叩きですよね?
0308306NGNG
そうなんです!
やっぱりキャッシュされてるのかな?
Javaから直にアクセスする方法はないものか・・・

そもそも、JDBCと、それ以外の接続の混在は想定されてないとか・・・
まさかそんな事はないよね。

(日本語の)Web、ML、ニュースグループ、書籍、ありとあらゆる情報調べたけど、
参考になりそうな情報もなし・・・
0309デフォルトの名無しさんNGNG
>>306
JDBCやdbExpはわからんけど、両者でデフォルトの排他レベルが違ってるとか。
0310デフォルトの名無しさんNGNG
http://www.jcorporate.com/econtent/Content.do?state=resource&resource=568
ここの接続パラメータのcache="n"だとか?
0311306NGNG
>>309
確認してみました。デフォルトのままで、同じレベル
(commit_readed?だっけ?)になってました。レベル自体も、問題ないみたいだし・・・

>>310
せっかく情報いただいたけど、このcacheに相当する設定がいったいどこにあるやら
いろいろ探したけどわかりませんでした・・・スマソ

別な方法考えるしかなさそう。Java(servlet)からInterBaseにアクセスするには、
他に方法はないのだろうか。

ボー○ンドは、高いサポート料を別に払わないとサポート受けられないし・・・(悲
0312デフォルトの名無しさんNGNG
>>311
オープンソースってのはそういうものさ。
0313Firebird にしようよ!!!NGNG
>>306
より詳しく環境を提示してくれない?

>フルLinuxベースで、
>InterBaseをDBにしてシステム組んでますが、問題にぶちあたりますた。
>JDBC系(Javaサーブレットから)、とそれ以外(主にkylixアプリ)、
>の二系統から同時に接続しています。

・Linux はディストリビューション、バージョンは?
・InterBase のバージョンは? Classic or Super
・InterClient のバージョンは?
・JDK のバージョンは?
・サーブレットコンテナは?
0314313 の続きNGNG
>JDBC系でデータ更新すると他のJDBC系の接続ですぐ更新したデータを見れるのに
>JDBC以外の接続から見るとデータが更新されてなかったり(遅れて更新されたり)
>それ以前に、片方が接続していると、もうかたほうの系統が接続できなかったり

サーブレットで JDBC 使ってデータ更新とかしてるってことだと思うけど、
どうやってるの?コネクションプールしてるとか?

とりあえず、オレもサーブレットで InterBase/Firebird 使ってるけど、オレの場合は
コネクションプールとかはしてなくて、HTTP リクエストごとに、
 DB接続→データ更新→DB接続切断
のような単純な処理してるけど、DB接続切断後に IBConsole とか使って確認したりしてるけど、
更新されてないようなことは今までないけどね。(当然のことだと思うが。)

どの時点で見てみて、更新されていない状態になるってこと?
トランザクションコミット後?DB切断後?
まさかコミット前ってことじゃないよね?

ちなみに当方の環境例)
・Win/Linux + Firebird 1.0SS + Tomcat 3.x/4.0.x + InterClient 2.01 + JDK 1.3.x/1.4.x
・Win + InterBase 5.6 + InterClient 1.6 + Tomcat 3.x (4.0.x) + JDK 1.3.x
0315314 の続きNGNG
>>311
>せっかく情報いただいたけど、このcacheに相当する設定がいったいどこにあるやら
>いろいろ探したけどわかりませんでした・・・スマソ

ちらっと見たけど >>310 のって JDBC と無関係なんでは?

Connection 時に "suggestedCachePages" っていうキャッシュ関係のパラメータがあるみたいだけど、
何か関係があるのか?? オレは使ってことないし、よくわからないけど。
(デフォルトは 0 みたいだからキャッシュしないと思うけど。)


>ボー○ンドは、高いサポート料を別に払わないとサポート受けられないし・・・(悲

そうだね。それに金払っても問題解決するとも限らないし。
0316Firebird にしようよ!!!NGNG
言い忘れたけど、

>JDBC系(Javaサーブレットから)、とそれ以外(主にkylixアプリ)、
>の二系統から同時に接続しています。

ってことで、サーブレットで更新したデータが kylix アプリの方で
更新前のものが読み込めちゃうってことなんだろうけど、
何かキャッシュの問題じゃなくてトランザクションの問題のような
気がしてきた。


>確認してみました。デフォルトのままで、同じレベル
>(commit_readed?だっけ?)になってました。レベル自体も、問題ないみたいだし・・・

デフォルトの排他レベルは SNAPSHOT なんじゃないの?
この場合は、サーブレット側のデータ更新前に、Kylix の方でトランザクション開始して、
サーブレット側データ更新後に、Kylix の方でそのままのトランザクションで
読み込もうとしても更新前のデータが読み込めるから、それが原因のような気がしてきた。

本当に READ COMMITTED なのかどうか確認した方がいいと思う。

もう一つの確認方法として、データ更新前に kylix アプリで内容を確認しておいて、アプリ終了する。
次にサーブレット側でデータ更新してから、再度 kylix アプリを起動して内容を確認してみる。
更新された内容が読み取れるのであれば、kylix 側アプリのトランザクションの設定が問題の
可能性が高いと思う。
0317デフォルトの名無しさんNGNG
... ぜんぜん「InterBaseを使いこな」してないじゃん。
0318デフォルトの名無しさんNGNG
DelphiでIB使うとき(kylixもたぶん一緒)
トランザクションが常に存在してるような感じになるから
Web側で更新された後にKylix側のトランザクション張りなおす
ような感じにしないとだめなような気が。

使ったこと無いけどEventAlert使ってみるとか
0319Firebird にしようよ!!!NGNG
>>318
たぶんそれが問題だろうね。
でもわざわざイベントアラータ使わないで、明示的にトランザクションすれば間違いない、はず。

>>306

下のようなコードにした方がいいってこと。


------------------------
■ データ読み出しメソッド
------------------------

(トランザクション開始)
try
select ... from ...
(コミット)
except
(ロールバック);
end;

------------------------
0320306NGNG
いろいろありがとうございます。レスが遅れてすいません。

>>313
DB:Redhat7.2 Linux + InterBase6.0サーバー SS
servlet(WEB):RedHat7.2 Linux + JRUN4.0 + InterClient2.02
です。InterBaseの動作環境はRH7.0なんですよね。でも、7.0にインストールしたら全然動かない・・・

>>314
>>更新されてないようなことは今までないけどね。(当然のことだと思うが。)
ちょっと説明不足でしたが、こちらも、JDBCとIBConsoleだけの時は大丈夫なんです。

>>316
>>デフォルトの排他レベルは SNAPSHOT なんじゃないの?
スンマセン、確認したらその通りでした。間違ってました。

そして、レスを参考に、考えなおしてみました。今まで、InterClientばかり問題視してたのですが、
みなさんおっしゃる通り、kylixの接続によりJDBCが排他される、と考えると、
今までの現象が全部納得いきました。

0321306NGNG

そして、それぞれのkylixの接続の状態で、JDBCの書き込むがうまくいくかどうか調べたところ、
・kylixがconnectionだけ --> JDBC書き込みOK
・connection+select(トランザクションにしない) --> NG
・connection+select(トランザクションとして、commitまで行う) --> 期待したのですが、NG
・connection+select+切断後 --> OK
・connection+select+切断後+またconnectionだけ --> なぜかNG

とにかく、kylixが一度でもアクセスしちゃうと、だめみたいです。
その間は、JDBCから書き込みしてもIBConsoleから見えないし
(しかしJDBCエクスプローラで確認すると見える InterServerのキャッシュにある?)
そして、kylixを切断すると、すぐにIBConsoleから見えるようになりました。

いちいちselectするたびに切断というのも・・・トロくなるし

というわけで、もう時間もないのでちょっとDBの扱いかたを変えて行くことにしました。
(JDBC系とkylix系のデータを別ファイルにする。さすがに別ファイルだと排他されませんでした。
二つのファイルの整合は、別な処理で行ってあわせる)
いろいろありがとうございました。

あとで時間があったら、ちゃんと解決したい・・・

0322デフォルトの名無しさんNGNG
Connectionではロックは掛からないようです。
明示的なトランザクションを掛けてないとするとデフォルトトランザクション
に問題が?一度パラメータの内容をログに吐かせて確認を。
http://www.borland.co.jp/interbase/tech/free_ib_compo/compo05.html

IBXのバグかも知れないのでこちらのチェックも。
http://codecentral.borland.com/codecentral/ccweb.exe/author?authorid=102
0323デフォルトの名無しさんNGNG
↑
0324デフォルトの名無しさんNGNG
FireBird V1.5 Alpha1 ダウンロード開始age。

プロシージャ、トリガ内の言語が拡張されていてなかなか良さげ。
CASE, NVL, NULLIFとかあるぞ。

ところで重いストアドを実行中は他のクライアントからの軽いクエリとか
でも急に重くなるんだよな。なんかいい案ない?
0325デフォルトの名無しさんNGNG
isqlにヒストリ機能が付きました。ここだけが不満だったの。
0326デフォルトの名無しさんNGNG
>>324
夜間バッチ
0327324NGNG
リアルタイム処理なんで夜間バッチはちょっとね。。。

InterBase/FireBirdは現状SMPに対応してないんだっけ?
対応してるならSMPのCPUパワーにものを言わせて解決しても良いんだけど。
SMP未対応ならHyperThreadのXeon, P4でもうまく動かないのかしらん。
0328デフォルトの名無しさんNGNG
>>327
http://www.geocrawler.com/archives/3/5501/2002/6/0/9054986/
0329デフォルトの名無しさんNGNG
サーバの現日付を得たいのだが
どう問い合わせればいいのでしょう?
oracleでは
select sysdate from dual;
とかで大丈夫なんだけど・・・
あと、tableの一覧修得方法などをご存じの方
どうかご教授くだされ
0330デフォルトの名無しさんNGNG
>>329
SELECT CURRENT_DATE FROM NANIKA_TABLE;
SELECT CURRENT_TIME FROM NANIKA_TABLE;
SELECT CURRENT_TIMESTAMP FROM NANIKA_TABLE;

これで取得できる。
テーブルの一覧は qli を使えば show fields; でいけるはず。
isqlとかでやる方法は知らない。
0331火の鳥NGNG
>>329

SELECT rdb$relation_name AS tablename
FROM rdb$relations
WHERE rdb$view_source IS NULL
AND rdb$system_flag = 0
ORDER BY rdb$relation_name; ← この行は必ずしも要らない

もっとシンプルな方法があるかもしれないが、漏れはこれ使ってる。
0332デフォルトの名無しさんNGNG
おお!
出来ました、出来ました!
ふと気になったのですが、
SELECT CURRENT_TIMESTAMP FROM Nanika_Table;
としたとき、ものすごい件数で結果が表示されますが
これを一件とかにできないのかなー?
SELECT CURRENT_TIMESTAMP
FROM NANIKA_TABLE
WHERE ROWNUM = 1;
としても、エラーが出るし
むぅ・・・
>331さんのテーブル一覧の方法
ものすごく勉強になりました。
本当にありがとうございました
0333火の鳥NGNG
>>332

>SELECT CURRENT_TIMESTAMP FROM Nanika_Table;
>としたとき、ものすごい件数で結果が表示されますが
>これを一件とかにできないのかなー?

うーん。煽りでもなんでもなくて、一度SQLの基礎を学習したほうがよいのでは?
Oracleマスターの試験を受けてみるとか(IBと直接関係ないが、SQLやDBの基礎
構造を学習する意味で有益)、IBのマニュアルを死ぬほど読み倒してみるとか、

このSQL文では テーブル "Nanika_Table"のレコード数だけ結果が返ってくる
ことはわかりますよね。
ならば、1行しか存在しないダミーテーブルを作ってそのテーブルから
同じように取得するとか、あるいは

SELECT MAX(CURRENT_TIMESTAMP) AS ctimestamp
FROM Nanika_Table;

のように必ず1行しか値を返さない関数を使用するとかの方法があると思います。
0334デフォルトの名無しさんNGNG
あ、ご指摘ありがとうございます
いわれてみるとそうですね。
動作が
NANIKA_TABLE = DUAL
と考えてしまいました
もう一度、自分のスキルを見直してみます

それはそうと、InterBaseでもoracleのrownumに
変わるものってありますか?
0335火の鳥NGNG
>>334

>それはそうと、InterBaseでもoracleのrownumに
>変わるものってありますか?

残念ながらぬぁいです。
ここで終わってしまうと身も蓋もないので、
ヒントだけ。簡単に説明できないので、あとは334氏のスキルの向上に期待します。

1。 InteractiveSQLなんかでGeneratorを作成
CREATE GENERATOR gen_rownum;

2. 作成されたGeneratorを使用して目的のテーブルに付加する。
SELECT gen_id(gen_rownum, 1) AS rownum, Nanika_Table.*
FROM Nanika_Table;

これでいけるはず。実際にはORDER BYなんかが絡んでくると
簡単には逝かないかもしれない(ちょいとテストで組んでみたんで
複雑なSQLではうまくいくかどうか未検証)上に、generatorのリセットが必要。
連続して実行するとgeneratorが加算されてしまう。
その場合は SET GENERATORを使用すればよろし。
詳しくはIBマニュアル「埋め込みSQLガイド」p96〜97および「データ定義ガイド」
p179〜 あたり見てみ。

ヒントといいつつ結局ほとんど記述しちまったよ…。
0336火の鳥NGNG
スレの流れと関係ないが

>>3
>Twise Lab
>ttp://www.twise.co.jp/index.html
>オープンソース版の日本語対応を行っている

たった今、たまたまここに逝ったんだけど、
「※FireBird関連のソフトは、ライセンス関連が明確ではないため、
配布を中止いたしました。」

と出てますた。
FBでアプリ配布してるんで、非常に気になるんだけど、なんかあったんだろか?
ibphoenixあたりに行っても、よくわからんかったし。
詳細またはライセンス体系の情報をもってる人誰かいたらお願い。
0337デフォルトの名無しさんNGNG
>335
なるほど、こういう方法があったなんて・・・
とても驚きです

InterBaseのマニュアルは持っていないので
Borlandからの購入を考えようと思っています
0338デフォルトの名無しさんNGNG
>>337
IB6.5を使ってるわけじゃないんなら金を出すにはおよばないよ。

http://lowlife.jp/cgi-bin/moin.cgi/FireBird

これの下の方に pdf 製マニュアルへのリンクがある。
IB6.0の英語マニュアル、IB5.6への日本語マニュアルが手に入る。

http://www.kt.rim.or.jp/~nagai/bio/db.txt

ここには Postgre/InterBase/Sybase/Oracle の違いを軽くまとめたメモがある。
0339 NGNG
よいインターネットですね。
0340デフォルトの名無しさんNGNG
JAVA方面はよう知らんのだけど、SourceForgeにアップされているFirebirdSQL-1.0_beta_1.zipっつーのはダメなの?
0341デフォルトの名無しさんNGNG
>>336
うちもFB使ったアプリを配布してるけど、このライセンスで問題ないんじゃない?
FB自体に手を入れた場合についてはごちゃごちゃ書いてあるみたいだけど
単体を配布するだけなら特に何もないはず。
その点、あそこで配布してた日本語版は手を入れた代物だからじゃないかと。

>>340
何が知りたいんだかさっぱり分からんからレスのしようがないぞ。
0342337NGNG
>338さん
マニュアル、早速ダウンロードして読んでみます
教えてくださって本当にありがとうございました。
0343デフォルトの名無しさんNGNG
IBTable ってリークしてない?
0344デフォルトの名無しさんNGNG
Prepare, UnPrepareの対は正しく対応しているか、Finally
ブロックで確実に行われているかチェック。
0345デフォルトの名無しさんNGNG
FireBird で SQL を勉強しはじめた者です。
プライマリキーを Double Precision 型にしたのですが、
TIBQuery で INSERT 文を発行するのにパラメータを使いたいのですが、
型の対応がわかりません・・・
TFieldType 型の何に相当するのでしょうか?
よろしくお願いします。
0346345NGNG
書き忘れてしまいました
使っているのは FireBird 1.0 と Delphi7 です。
0347火の鳥NGNG
>>345

ここで質問するまでもなく、
Delphiの設計画面で TIBDatabaseで接続して、TIBQueryにSQL文を
指定し、項目エディタで全フィールドを追加して、調べたいフィールド
のタイプを見ればわかることではないのかと思われ。

いや多分この方法が思いつかなかったからこそ質問したことは
想像できないことはないのですが、今後不明な項目タイプがあったとき
この方法で調査できます。
やり方がわからんかったらDelのマニュアルを見るか、聞いてください。
ML入ったほうがいいかもしれないよ。

ちなみに、TFloatFieldです(当方FB1.0 + Del5).
0348デフォルトの名無しさんNGNG
InterBaseって まだ あったんだ・・・。
今は、どの会社が サポートしてるんだ?(w
0349345NGNG
おおっ、そういえばこんなのがありましたっけ!
はるか昔に Paradox をいじってた程度なので全然思いつきませんでした。
一歩前進できました。火の鳥さんどうもありがとうございます。
0350345NGNG
もう1こ質問です。こんなテーブルを1つ作りました。
- DoublePrecision (Primary Key)
- Integer
- Char(64)
- Char(256)
以下のように追加を繰り返すと、たかだか13万レコードを追加するのに10分もかかるのですが
IBTransaction1.StartTransaction;
try
 n := 0;
 while not f.Eof do
 begin
  s := ReadLn(f);
  i := Pos(#9, s);
  if (0 < i) then
  begin
   IBQuery1.Params[0].AsFloat := n;
   IBQuery1.Params[1].AsInteger := i-1;
   IBQuery1.Params[2].AsString := Copy(s, 1, i-1);
   IBQuery1.Params[3].AsString := Copy(s, i+1, Length(s));
   IBQuery1.ExecSQL;
   Inc(n);
   ProgressBar.StepIt;
   if ((n mod 10) = 0) then
    Application.ProcessMessages;
  end;
 end;
 IBTransaction1.Commit;
定石みたいなものがあるのでしょうか?
ProgressBar の動きを見ていると、後半になると遅くなってゆくみたいです。定期的に Commit しないとだめとか?
TIBSQL の方が速いらしいですが、使い方がイマイチわかりません・・・
0351345NGNG
ML って InterBase for Linux & FreeBSD ユーザーズメーリングリストですか?

Delphi-ML なら入っていますが、Interbase の話題は見たことがないので
こっちは質問しづらい感じがします。
0352火の鳥NGNG
>>350

FBでこのような処理をしたことがないので、あくまでも推測でしかないのですが、
Oracleで行った経験から言うと、

インデックスが効いている場合、挿入が行われる度にインデックスが再作成される
ために、遅くなるのでは内科と思われ。
ためしに ALTER INDEX (インデックス名) INACTIVE; で処理前にインデックスを
無効にして、Commitしたあとに ALTER INDEX (インデックス名) ACTIVE; で
元に戻してみてはどうでしょう。

理想的にはwhileで1行ずつ回しながら挿入するのではなく、
INSERT INTO (tablename)
SELECT ... FROM ...;
のように一気に挿入するのがベストだけど、これはこの構文を見る限り
難しいかもしれない(漏れだったら何が何でもwhileを避けて、関数を駆使して
SELECT文で一気に挿入する方に持っていこうとします)。

ちょっとwhile使わない方法考えてみるから時間ください(←多忙のため、
もしレスしなくても怒らないでください)。

>>351 そうです。
0353火の鳥NGNG
ごめん。テーブルからテーブルに追加するのではないのですね。
やっぱりこのコードから推測すると、whileで回すしかないみたいです。

>>348
InterBaseはまだ棒ランドがやっとります。
最近はInterBaseから派生したFireBirdがオープンソースで出てる。
このあたりの経緯はスレを最初から読んでみて。

しかし、最近急に質問が多くなってきたような気が。
0354345NGNG
定期的なコミットは意味がありませんでした
TIBSQL を使ってみましたが逆に遅くなりました

>SELECT ... FROM ...;
テンポラリテーブルを作ってバッファみたいに使ってSELECTかける という話かと思いました。

今は教えていただいた ALTER INDEX をやってみようとしています。
テーブルは Marathon で作っているのですが
PK_〜 とか RDB$〜 RDB$INDICES とかどれがどれだか・・・
エラーで弾かれまくりです^^;
0355デフォルトの名無しさんNGNG
InterBase7でますた。
・マルチプロセッサー・サポート
・接続モニタリング
・タイプ4 JDBCドライバー
だそうだす。
http://www.borland.com/news/press_releases/2002/10_29_02_ib7_launch.html
0356デフォルトの名無しさんNGNG
もっと詳しい情報はこちら。
http://www.dbginc.com/tech_pprs/ib7/IB7.htm
0357デフォルトの名無しさんNGNG
paradoxの質問してもよかですか?
0358デフォルトの名無しさんNGNG
>>345
ちょっとテストしてみました。

PC:Dell Optiplex GX200 (PenIII 933MHz/128MB)
OS:Windows NT Workstation(SP6a)
Delphi 5.0 Pro + Update1
DB:FireBird 1.0 (Twise Lab.バージョン) ※ローカル環境

データ:郵便番号データファイル(行数:12万件ちょっと)のうち、
 ・旧郵便番号 (VARCHAR)
 ・新郵便番号 (VARCHAR)
 ・都道府県名 (VARCHAR)
 ・市区町村名 (VARCHAR)
 ・町域名 (VARCHAR)
をInsertしました。(コードはほぼ同じです。)
※主キー、インデックスは無い状態です。

結果、約3分程度で処理が完了しました。
やはり、インデックスを解除→Insert→再度インデックス設定 が効果ありそうです。
0359345NGNG
こんばんは345です。
わざわざテストまでしていただいて、感謝です。
こちらでもやってみました。結局 Primary Key は ALTER INDEX できないと叱られたので、
インデックスを削ったところ 50 秒程速くなりました。
しかし速度は頭打ちでした。この点は既にあきらめモードです。
実は K6-2 450 / 756MB・・・差はこれなのかなぁ。
データセット外してみたりしたけどやっぱり変わりませんでした。

また質問があります。
WideString を使いたいのですが、Char_Setに UNICODE_F55 を選ぶだけでよいのでしょうか?
0360デフォルトの名無しさんNGNG
>>359
テーブル削除してから空のテーブル作って、追加後にインデックス
付ければ良いのでは? 多分、テーブルをemptyにするよりも早いかと。

BDE3.xでは大丈夫だったのに、5.x以降はインデックスがあると、
10万件を超えるようなデータを追加したら落ちましたので、今はこの
方法を使っています(Paradoxですが)
0361デフォルトの名無しさんNGNG
使ってみたけど、なんかストアドプロシージャの書き方が
独特なのね...

フィールド名も日本語使いたい...
0362345NGNG
なんかCreateDatabaseする時とOpenする時とでパラメータの記述方法が違うみたいですけど
USER "SYSDBA"
PASSWORD "masterkey"

user_name=SYSDBA
password=masterkey
こういう物なんでしょうか?
0363345NGNG
わかりました。
http://www.borland.co.jp/interbase/tech/free_ib_compo/compo04.html
0364デフォルトの名無しさんNGNG
InterBaseってOracleのrowidみたいなのはないの?
0365345NGNG
350の問題でこんな方法を見つけたです
「外部ファイルからデータを挿入する」
http://www.borland.co.jp/interbase/ib4/TUT/tut_05.html
CSVデータを外部テーブルに読ませて INSERT INTO ... SELECT
できるみたいです。まだ試せていません。

というのもFireBirdにはWindowISQLが付いていないんですねー
ISQLコマンドラインよくわかんない・・・
0366デフォルトの名無しさんNGNG
>>365
俺はcsvをperl製スクリプトでsqlに落としてから
isqlに-iオプションで食わせてデータを挿し込んでる。
スクリプトを弄ればダミーデータ作るのにも使える。
isqlのコマンドライン版は使い出があるから色々と試してみるといいよ。
0367デフォルトの名無しさんNGNG
>>350
プログレスバーのせいでは…
0368デフォルトの名無しさんNGNG
外部ファイルは用が済んだらドロップした方が良いそうです。
バックアップやスイープなどで支障が出るそうです。NGで見たような気がします。
(IBの人気はフリーDBMSではPostgreやMySQLに続いて第3位だそうですね。)
0369350NGNG
・Prepare をコールするようにした
・Params の型をきっちり指定した
・INSERT INTO でフィールド指定をなくした
あと、項目を1つ増やしたら不思議な事になぜか少しだけ速くなった・・・
これでなんとか7分になったよー(´∀`)

>プログレスバーのせいでは…
Σ(゚Д゚;)……

if ((n mod 100) = 0) then
begin
 ProgressBar.StepIt;
 Application.ProcessMessages;
end;
これだけで4分切りました。
ありがとうございました。
0370345NGNG
>isqlのコマンドライン版は使い出があるから色々と試してみるといいよ。
いまIBのマニュアルを一通り読み終え、
やっとストアドプロシージャの設置方法がわかりました。

まだそんなレベル・・・
0371デフォルトの名無しさんNGNG
TIBQueryなどでPrepareを行っている時、Paramsの値を変える毎に
Prepareする必要はあるのでしょうか?

ヘルプを見ると
>実行時に問い合わせテキストを変更すると,問い合わせは自動的に
>閉じられ,準備が解かれます。
となっていますが、あくまでこれはSQLそのものを変更した場合であって
Paramsの内容を変えただけの場合にはPrepareは不要なのでしょうか。

変な質問ですいません。
0372デフォルトの名無しさんNGNG
>>371
その必要は無いと思う。
ループ外の最初でPrepare、最後でUnPrepaerでいい。
問い合わせ最適化の為のパラメータ化クエリーなのだから。
0373371NGNG
了解です。
パラメータを変えると毎回Prepareしないといけないような
気がして不安だったのですが、安心しました。
0374デフォルトの名無しさんNGNG
Firebirdの本が今月末出るそうだよ。加藤大受が書いたそうだ。
0375デフォルトの名無しさんNGNG
>>374
どこの出版社?
0376デフォルトの名無しさんNGNG
>>374
ソース教えてもらえますか?
0377デフォルトの名無しさんNGNG
毎日コミュニケーションズ。
本人から聞いたよ。
0378デフォルトの名無しさんNGNG
なんかトランザクションの管理が大変なんだけど
みんなはどうよ?
0379デフォルトの名無しさんNGNG
>>378
どう大変?
0380デフォルトの名無しさんNGNG
加藤大受さん元気だったんだ。数少ないFireBirdの日本人メンバー
だからねー。
0381デフォルトの名無しさんNGNG
>>380
へ、そうなの?
ソースの中にそれらしいクレジットないし、
メーリングリストでも名前を見かけた記憶ないぞ。

http://sourceforge.net/project/memberlist.php?group_id=9028
0382デフォルトの名無しさんNGNG
>>380
IBDIのメーリングリストでは見たことがあるけど。最近は見かけないなあ。
0383デフォルトの名無しさんNGNG
つまり加藤大受はFirebirdプロジェクトと関係ないのね。
0384デフォルトの名無しさんNGNG
本人がいうには、Firebird QAには参加しているようだよ。まあ、もともと
QAの人だからね。

0385デフォルトの名無しさんNGNG
ServerはFireBird
IBConsolのInteractiveSQLで
create procedure max_denno (v_shiten char(2), v_tok char(4))
returns (r_max char(10))
as
begin
select max(uridenno)
from uritrn
where (uritrn.shitencode = :v_shiten)
and (uritrn.tokcode = :v_tok)
into :r_max;
end
って記述して
実行するとエラーが
Dynamic SQL Error
SQL error code = -104
Unexpected end of command
って出るけど、どこか構文間違ってる?
0386385NGNG
あ、出来ました
suspend;が抜けてました
初歩的なミスですみません

しかし、InteractiveSQLでコンパイルすると
Dynamic SQL Errorが出るのはなぜだろう?
0387デフォルトの名無しさんNGNG
>386
set termを使ってないからじゃないかな。
0388デフォルトの名無しさんNGNG
近刊情報ということで...

Firebird−オープンソースデータベースの導入と運用の実際
著者:加藤大受
定価:本体3,800円+税
B5変型判・430ページ
ISBN 4-8399-0889-3

11月下旬発売とのこと。

http://book.mycom.co.jp/
(近刊のご案内欄)
0389デフォルトの名無しさんNGNG
>11月下旬発売とのこと。
って具体的にいつ?
誰か本屋行った人報告してちょ。
0390デフォルトの名無しさんNGNG
IBやFBのデータベースファイル(GDB)って、コピーさえ出来れば、他の環
境に移してSYSDBAユーザで開けちゃうものなんですか?

ファイル単位でパスワード等を掛けることは不可能でしょうか?
0391デフォルトの名無しさんNGNG
>>390
コピーすれば Win でも Linux でもどこでも使える。
(これは長所)

>ファイル単位でパスワード等を掛けることは不可能でしょうか?
できないみたいだね。
OSの機能使って勝手にコピーできないようにして対処するしかない。
(これは短所)
そういうリクエストしてみたらいいんでないかい。Firebird プロジェクトに。
0392デフォルトの名無しさんNGNG
>>391
さっそく、ありがとうございます。
SYSDBAユーザに開けないGDBファイルを作成することも不可能なのでし
ょうか?
元ファイルのSYSDBAのパス変えても無駄ですよね?
0393デフォルトの名無しさんNGNG
>>392
>SYSDBAユーザに開けないGDBファイルを作成することも不可能なのでし
>ょうか?
さっき言ったとおり無理。

>元ファイルのSYSDBAのパス変えても無駄ですよね?
ユーザ名、パスワードって使用している gdb ファイルに記録されるんじゃないよ。
IB/FB ディレクトリにある isc4.gdb ってファイルに記録されるんだよ。
だから SYSDBA パスワード変えても、そのサーバ側の isc4.gdb が更新されるだけ。
0394390NGNG
>>391
無学な私に迅速なお答えありがとうございます。
では9X系のWindowsではテーブル構造等を隠すことは不可能なのですね。
みなさんはどのように対処しているのでしょうか?
0395デフォルトの名無しさんNGNG
>>394
>では9X系のWindowsではテーブル構造等を隠すことは不可能なのですね。
>みなさんはどのように対処しているのでしょうか?
運用に際には WinNT系やLinux にしないとまずいと思うよ。(外部にもれちゃまいずなら)
当然だけど、管理者しか管理者モードでログインできないようにすれば
まず勝手にコピーされることはないと思うよ。
(もちろんファイルパーミッションをちゃんと設定すること)
0396390NGNG
実は自分で使うものではなくて、頼まれたものなのです。
他所のPCにインストールしたいので、UNIXやNT系のサーバがない環境
も想定していました。

隠したい理由はセキュリティよりもテーブル構造等を恥ずかしいので
隠したいのです。文面でもわかるとおり無知なもので。

今まではJETで少し作ったことはあるのですが、少し勉強してみよう
と思い、フリーで高性能、なおかつ使用しているC++Builderとの親和
性も高いので、FireBirdを使ってみようと思いまして。
0397デフォルトの名無しさんNGNG
>>396

>隠したい理由はセキュリティよりもテーブル構造等を恥ずかしいので
>隠したいのです。文面でもわかるとおり無知なもので。

>実は自分で使うものではなくて、頼まれたものなのです。

そのクライアントが IB/FB の管理ツール(IBConsole, DatabaseExplorer等)持っていれば
テーブル構造みられちゃうけどね。
恥ずかしいとかよりも、
さっきのレスのように勝手にコピーされると中身見られるから管理には気をつけて
って言ったあげることの方が大切なことだと思うよ。
0398sageNGNG
>>388
Borland Conferenceでおいてあったチラシによると、
11月29日発売らしい。

0399デフォルトの名無しさんNGNG
>>398
Thanks!
0400デフォルトの名無しさんNGNG
400get!
クソしてくる
0401デフォルトの名無しさんNGNG
Firebird本、本当に11月下旬発売なのか?
cbook24で予約しようとおもったんだけど...
0402デフォルトの名無しさんNGNG
>>401
トーハンのサイトで、
http://www.e-hon.ne.jp/bec/EB/Top

書籍は見つかったけど、まだ発売していないみたい。

http://www.e-hon.ne.jp/bec/SA/Detail?refShinCode=0100000000000031063260

もうちょっと待ちでしょうね。

0403デフォルトの名無しさんNGNG
>>401

Bookmallで購入できたよ。
http://pc.bookmall.co.jp/search/info.php?Code=33519
0404デフォルトの名無しさんNGNG
今日、書泉に置いてあったよ。
中身は見てないけど。

毎コミのサイトでも「購入する」になったね。
http://book.mycom.co.jp/
0405デフォルトの名無しさんNGNG
書泉で立ち読みしてきました。
Java, Delphiの例はもちろん、Perl, Python 果てはZopeでの利用例まで載ってる。
欲張り過ぎで個々の中身うすい。
アスキーの「データベースLinux(下田雅彦 著)」のほうがいいよ。
0406デフォルトの名無しさんNGNG
>>403
bookmallで購入したのが届きました。
Javaの記事が多い加藤さんらしく、Javaから使うときにはいいかも。
あとは参考までにいろんな使い方があるっていう感じだな。
0407デフォルトの名無しさんNGNG
DelphiでIBXを使って開発しています。
レコードをINSERT後にすぐオープンダイアログを表示して、
ファイルが選択されなかったらロールバック
選択されたらコミットしたいのですが・・・
オープンダイアログを開くだけでトランザクションが閉じてしまい困っています
何か設定があるのでしょうか?

もしおわかりの方いらっしゃいましたら教えてください
よろしくお願いします。
0408デフォルトの名無しさんNGNG
>レコードをINSERT後にすぐオープンダイアログを表示して、
>ファイルが選択されなかったらロールバック
>選択されたらコミットしたいのですが・・・

手順がおかしいぞ。
 ファイル選択 → INSERT(COMMIT)
の順じゃいけない理由を教えてクレ。

>オープンダイアログを開くだけでトランザクションが閉じてしまい困っています

その部分のソース提示してよ。
0409デフォルトの名無しさんNGNG
InterBaseもついに7まで。
http://www.borland.com/interbase/

isqlでset term書かなくてもいいってのはちょっと嬉しいか。
0410デフォルトの名無しさんNGNG
フォルダ選択ダイアログの間違いでした。すみません。
フォルダ選択ダイアログではフォルダを新規に作成する事もできますので、
 フォルダ選択(実は作成した) → INSERT ...キャンセル
とされるとフォルダが残ってしまいます。
作成されたフォルダかどうかは判断できないため削除するわけにもいきません
で、データを登録してから開始フォルダを選ぶという事にした次第です。

 ExecInputForm;
 try
  //InTransaction=TRUE
  if not FolderDialog.Execute then //InTransaction=FALSE
    Abort;

  // 処理
  Commit;
 except
  RollBack;
 end;
0411デフォルトの名無しさんNGNG
まちがいました
if not ExecInputForm then
begin
 Exit;
end;
try
です。
0412デフォルトの名無しさんNGNG
abortした際にexceptへ処理が飛んでいますか?
(HELPにはfinalyへ飛ぶとありますがexceptとはなっていないので)
例外処理で対応せずにif elseで分岐させれば正常に動作しますか?
raiseでエラー生成するとどうなりますか?
0413デフォルトの名無しさんNGNG
教えて君ですみません。
PHPでInterbaseを利用しようと思っています。
1、例えば"SELECT aaa FROM table"の結果の件数を知るのに
  どのようにしてますか?"SELECT COUNT(aaa) FROM table"として
  再度"SELECT aaa FROM table"を投げているのですが、どうもスマートに
  思えなくて。他の方はどうしているのでしょうか。
2、PEARを利用した際に、
  $result = $database->$query("SELECT * FROM $table");
  と*を利用するとhttpdが落ちるのですが正常に動作しますでしょうか。
3、同じくPEARを利用した際に、
  $query = $database->prepare("INSERT INTO table(a, b) VALUES (?,?)");
  $array = array(c,d);
  $result->execute($query, $array);
  が利用できない($arrayが展開されて代入されない)のですが正常に動作
  しますでしょうか。
4、PerlでDBDを利用する場合、SELECTの結果の指定件数(n件めからm件まで)
  を取り出すという関数はあるのでしょうか。
環境はTurbolinux7Server+apache1.3.27+php4.2.3+Firebird1.0です。
(apache,phpともにTurboLinuxの公式サイトのものです。
phpはibaseが使えるようにspecを弄りました)
どなたかよろしくお願いします。
0414デフォルトの名無しさんNGNG
>>413
PHP のことはわかりませんが、
>1、例えば"SELECT aaa FROM table"の結果の件数を知るのに
>  どのようにしてますか?"SELECT COUNT(aaa) FROM table"として
>  再度"SELECT aaa FROM table"を投げているのですが、どうもスマートに
>  思えなくて。他の方はどうしているのでしょうか。
件数を知るには COUNT 使って取得するか、
クエリの結果セットを最後までフェッチして自分で件数をカウントするか
のどちらかしかないと思う。

>4、PerlでDBDを利用する場合、SELECTの結果の指定件数(n件めからm件まで)
>  を取り出すという関数はあるのでしょうか。
>環境はTurbolinux7Server+apache1.3.27+php4.2.3+Firebird1.0です。
最初に
>PHPでInterbaseを利用しようと思っています。
とあったけど Firebird なら、FIRST と SKIP 使えばできます。
 SELECT FIRST m SKIP (n-1) aaa FROM table
・SKIP は先頭から無視する行数
・FIRST は取得したい行数(この値以下の行数分取り出せる)
これは InterBase では使えないから注意。
オレは使ったことないけど、InterBase 6.5 にもこれに相当する機能があるらしい。
0415デフォルトの名無しさんNGNG
>>413
PHPのドキュメント眺めるとわかると思いますが、Interbase以外の
DB用関数にクエリ関数で返ってきた結果(ストリーム)の行数を数え
るXXXX_num_rows()関数(MySQLならmysql_num_rows())があります。
・・・とは言っても
1. XXXX_query()関数でSQLを投げて結果を得る
2. 得た結果をXXXX_num_rows()関数に食わせて行数を得る
の様な使い方になるので、413さんの2回SQL文を投げるやり方でも
汚くはないと思いますが?
0416413NGNG
ご返信&情報ありがとうございます。
>414
書き方が悪くてすみません。急にPerlの話を出して。えと、PEARとかDBDを
利用することを考えているのは、なるべく汎用化できないかと思っているのです。
移植の際に触る部分を減らしたいなぁと。
A社ではpostgres,B社ではFireBird,C社ではフリーはダメよとか
いろんな案件でも使いまわしができた方が楽なので。
今のところ、PEARはHTTPDごと落としてくれるしDBDも未完と聞いたのですが
今の内に準備しておこうと思いまして。
FIRST,SKIP個人的に待望の機能です。ありがとうございます。
>415
PEARにもnmRows()あるんですけどInterbaseで試したら使えませんでした。
MySQLでうらやましいのはnum_rows()の後、続けてfetch処理ができるのに
Interbaseだとfetchして行数をカウントした後、
再度クエリーを投げてfetchしなきゃならない。
スマートさ以前に処理時間がかかる・・・。

PEARの件は、外国のMLも検索したのだけれど数件しかヒットしないし、
prepareの問題は出ていないようで、本当に日本で宣伝されているほど
米国ではメジャーなDBなのか疑問に思うほどです。

好きなDBなので、他にもすすめたいのですが・・・。
日本語版6.5も出る気配がなさそうですね。
最後は愚痴になりましたが、ありがとうございました。
PEARについてはPHP板のほうでもあらためて聞いてみます。
マルチだと非難しないでくださいね。
0417デフォルトの名無しさんNGNG
>>416
>...本当に日本で宣伝されているほど
>米国ではメジャーなDBなのか疑問に思うほどです。
同感。

> 日本語版6.5も出る気配がなさそうですね。
IB6.0 が売れてないからかな?
フリーの Firebird があるからわざわざ金だしてまでも買わないんだろうね。

豊富なミドルウェアってことを宣伝文句にしてるけど、
ただ使えるっていうだけであって実用レベルじゃないんだね。
Java には結構力入れてるって感じがするけど。
0418デフォルトの名無しさんNGNG
>>417
米国で売れているというよりもモトローラがずいぶん使っている
だけじゃないかな。イメージ的にはヨーロッパのユーザーが
多い気がするけどね。
結局、Borlandのツールとの連携がいいって部分にはミドルウェアの
良さはないんじゃないかな。
0419デフォルトの名無しさんNGNG
シャドウ(ミラーリング?)の作成のしかたって
どうするの?

IBConsoleからできますか?
0420デフォルトの名無しさんNGNG
>419
なぜ尋ねるのにsage?
CREATE SHADOW....
0421デフォルトの名無しさんNGNG
マニュアルもろくに読まない人が CREATE SHADOW したって無駄だと思います。
どうせほかの原因でシステムがクラッシュするでしょうから。
0422デフォルトの名無しさんNGNG
>>419
InterBase のマニュアルもってないなら、以下のコメント参照してみて。
http://pc3.2ch.net/test/read.cgi/tech/1035278719/27
このセットアップファイルを実行しなくても、アーカイバ使って
pdf ドキュメントだけ取り出せます。

あとご存知かもしれませんが、
「Firebird オープンソースデータベースの導入と運用の実際」
(ISBN4-8399-0889-3) \3,800(税別)
という本が出ています。
InterBase にも対応しているのでご購入してみる価値はあると思います。
コンピュータ書を大きく扱っている本屋じゃないと置いてないかもしれません。
(私はネットで購入しました。)
0423デフォルトの名無しさんNGNG
>>419
>IBConsoleからできますか?
GUIではできません。
「Interactive SQL」ウィンドウからならばできますが、
SQL文を入力する必要があります。
0424デフォルトの名無しさんNGNG
Borland の InterBase6.0(商用版) についてくるマニュアルは
5.x のマニュアルと内容は(ほとんど)同じでしょうか? 形式はやはり pdf ?
0425デフォルトの名無しさんNGNG
D7 日本語版にはこっそり IB6.5 が入っていますが、なにか?
0426デフォルトの名無しさんNGNG
>>424
印刷したマニュアルとPDFの両方付いてくる。マニュアルだけでも買えるぜ。
http://www.borland.co.jp/sales/interbase.html
0427デフォルトの名無しさんNGNG
>>426
漏れは商用版とオープンソース版両方持ってるが、
マニュアルと IBConsole は商用版、本体はオープンソースを使ってる。
やっぱ紙のマニュアルは・・・(・∀・)イイ!
0428デフォルトの名無しさんNGNG
>425
そなの?
で、ライセンスはどうなっているの?
まさか、開発はできるけど、リリースできないなんてことはないよね。
リリースは旧版でとかさ。
バカにするにもいいかげんにしてほしいよね。
0429デフォルトの名無しさんNGNG
>まさか、開発はできるけど、リリースできないなんてことはないよね。
MSDEのようなサブセット・機能制限付きでリリースするくらいなら
Firebirdを使えばいいからライセンスは気にならないな

将来的に互換性が心配ならむしろFirebirdで開発すればいいし
0430428NGNG
>429
ちゃいまんがな。
そんなことを言ってるんじゃないんです。
別にユーザーがFireBird使おうと、Oracle使おうと関係なく、

BorlandがどういうつもりでD7に同梱しているのか
を問うてるんです。
0431デフォルトの名無しさんNGNG
>>429
でもIBX使うとやっぱ問題あるかね?
0432デフォルトの名無しさんNGNG
例えリリースOKだとしても、同時接続制限されてるはずだから
別途接続ライセンス買わなきゃならんだろう。
Firebird なら接続ライセンスは存在しないから、
一切金が掛かることはない。

InterBase(商用) はいざというときメーカーが面倒みてくれるから、
とか聞くけど、保守料支払っても問題解決することはほとんどないよ。
某のサポートのレベルがどうこうというのもあるが、
結局は自分でなんとかしなきゃならんから意味なし。
メーカーサポートよりコミュニティの方がレベルが高いし。

InterBase に未来はないだろうから Firebird に乗り換えよう。
今からなら難なく Firebird に乗り換えられる。
0433デフォルトの名無しさんNGNG
>>430
オレは D7 まだ買ってないからよく知らないけど、
これに同梱されてるのって LocalInterBase とかいうヤツじゃないの?
D7 じゃなくても入ってたよね。こんなようなヤツが。
ようするに InterBase を体感してもらうためだと思う。
良ければ買えと。
0434デフォルトの名無しさんNGNG
>>430 それはスマソ
Paradoxでの開発は推薦しないということだから
開発用にIBを入れるのは当然でしょ
ま、本音は「あわよくばIBを売りたい」ってとこでしょうけど
VSにMSDEを入れてSQL Serverを売ろうというのと似たようなもの

ユーザー制限付きでIBの配布が可能ならMSDEと同等というとこだろうけど
Firebirdがあるからまあいいかと思っちゃます
0435デフォルトの名無しさんNGNG
>>431
Del6に付いてるIBXでは今のところ問題なし(IBTableは使わないという前提で)

互換性はDelとFirebirdのバージョンアップの際に気をつけないといけないけど
某がわざとFirebirdでの開発ができなくなるようにするとは考えにくいよね
(DB開発者が一斉にバージョンアップをボイコットするだろうから)
0436デフォルトの名無しさんNGNG
>>435
そのうち FBX(Firebird Express) なるものが出るかもよ。
0437デフォルトの名無しさんNGNG
IBX は IBDatabase, IBTransaction, IBSQL で充分。
データコントロールと連携させるアプリはショボい。
0438デフォルトの名無しさんNGNG
>>436
Firebird 1.5 では
 ibserver → fbserver
 gds32 → fbclient
に名前が変更されているようだね。
0439428NGNG
わーん、解ってくれないよぉ。みんな大人だよぉ。
D7付属のInterbaseは6.5なんでしょ。
で、そのInterbase6.5は販売の予定がないでしょ。
Firebirdとの互換もないかもしれないでしょ。

IB売りたいなら販売している6.0にすべきだし、
大胆にFirebirdという手もある(無理だろうけど)

出す気もない6.5を同梱しているのはどういうことだ。
バージョンの違う環境でビジネスアプリ開発するか?
IBが売れるか?顧客へ導入の説得ができるか?
おざなりにも程があると思うんだが。

でも沈みがちなこのスレが上がってうれしいのでage。
0440デフォルトの名無しさんNGNG

Twise Labo. Inc. でまたまた日本語版が公開されましたね。
http://www.twise.co.jp/download.html

0441デフォルトの名無しさんNGNG
>>439
FB>>>>>>>>>>>>>>>IB6.0
だから 6.5 付けなきゃと思ったのかな。
でも謎ですね。暇なら謎解きお願いします。

ところで同梱されてるのはどうせ Desktop Edition でしょ?
Firebird があるのになんでこんな中途半端なもんか不思議。
0442デフォルトの名無しさんNGNG
>>439
RDBMS 初心者向けのために同梱しただけかも。
これで勉強してくれと。(ただし運用はできんが)
0443デフォルトの名無しさんNGNG
DB初心者なんですが、
C++BuilderやDelphiにあるIBXでFireBirdをたたくことはできるんでしょうか?
ひょっとしてガイシュツな質問……?
0444デフォルトの名無しさんNGNG
>>443
もちろんできます
0445デフォルトの名無しさんNGNG
>>444
ああ、早速の回答ありがとうございます。
ではやってみます。

と、いう訳で自分のPCを人柱にインストール済みのInterBaseをアンインストールして
先ほどDLしたFireBird(日本語化したやつ)をインストール。
C++Builder5(Pro)でTIBDatabaseを使ってテスト。
……うーん、やっぱりただインストールしただけではだめなんかなあ。
コンソール側(FireBirdに付属のやつ)ではInterBaseが生成したファイルにアクセスできました。
0446デフォルトの名無しさんNGNG
>C++Builder5(Pro)でTIBDatabaseを使ってテスト。
>……うーん、やっぱりただインストールしただけではだめなんかなあ。
どうダメだったのか詳しく説明してもらわないと答えようがないよ。
0447デフォルトの名無しさんNGNG
>>446
お世話になってます。&ご迷惑をおかけしました。

えーと、あれからいろいろ試してうまく動くようになりました。
こちらの早とちりでした。
テスト用に書いたコードではTIBTableを介してTDBGridに接続してたんですが、
TIBTable::Activeがfalseになっていただけのこと。
無事テーブルの情報を得ることができました。

アドバイスとお気遣いをありがとうございます。
0448デフォルトの名無しさんNGNG
>>19 以降各書で TIBTable の問題が挙がってますけど、
その後新しい情報はありませんでしょうか?

漏れのアプリは TIBTable だらけなので心配でしょうがないです。
やっぱ TIBDataSet に置き換えた方がいい?
でも参照項目とかもバンバン使いまくってるしな〜(鬱
0449デフォルトの名無しさんNGNG
>>448
それより TIBTable って利用価値あるの?
Query 系じゃないと実用にならないと思うが。
0450448NGNG
>>449
レスさんくすこ。
DBGrid 使っての編集とかが TIBDataSet ではできないですよね〜(鬱

>Query 系じゃないと実用にならないと思うが。
この辺の話、も少し詳しく教えてきぼんぬ。
0451デフォルトの名無しさんNGNG
>>435
BorlandのNGの「Why IBX or more general Borland will support Firebird?」というスレッド。
ttp://216.101.185.148/scripts/isapi.dll/thread?id=5CC7388F&thread=1049979
↑あたまから読んでみると
「うるさい、いちいちFirebirdの事なんざ聞いてくんな!うんざりなんだよ、あっちで聞け!」
とIBXの作者が少々キレ気味なのが分かる

InterbaseとFirebirdではSQL拡張の部分で既に違いが発生してることから、今後
APIレベルでも差がでてくることは必至かと。
個人的にも出来るならなるべく早い段階でIBXから離れたい。

調べた限りでFirebirdに対応しているコンポーネントは
http://www.upscene.com/
ここのInterXpress for Firebird(まだαらしい

http://www.ibobjects.com/
のIB Objects

http://www.fibplus.net/
のFIBPlus

>>436
SorceForgeにプロジェクトページだけはあるね。
http://sourceforge.net/projects/fbx/
0452デフォルトの名無しさんNGNG
>>451
ご苦労様

>SorceForgeにプロジェクトページだけはあるね。
>http://sourceforge.net/projects/fbx/
そうなのか。これに期待したい。
IBX と干渉しないように完全分離してもらいたいよね。

>ここのInterXpress for Firebird(まだαらしい
これって dbExpress でしょ。
IBX と違って配布時に余計なランタイム必要になるよね?違うかな??
0453デフォルトの名無しさんNGNG
>>450
TIBQuery と TIBUpdateSQL を組み合わせればできるんじゃない?
TIBUpdateSQL は右クリックしたダイアログで SQL 文自動で
作ってくれるからそんなに難しくないと思うけど。

オレは DataControls コンポーネント使ってやらないから
TIBSQL さえあれば充分。
特に DBGrid のスクロールの挙動が気にくわないから、
自前で作ってる。
0454451NGNG
>>452
> >ここのInterXpress for Firebird(まだαらしい
> これって dbExpress でしょ。
> IBX と違って配布時に余計なランタイム必要になるよね?違うかな??

余計かどうかは置いといて、データベースごとにDLLがいるね。
どのみちIBX使う場合でも、gds32.dllは否応なしに配布が必要なんだから
DLLが一つ増えたぐらいなんでもないかと。
0455448NGNG
>>453
レスThanx。

> 特に DBGrid のスクロールの挙動が気にくわないから、自前で作ってる。
( ´・ω・)ショボーン ・・・ そこまで腕ないから、あきらめて TIBTable 使おうかと思います。
0456448NGNG
>>455
でも参照するだけのテーブルは TIBDataSet に移行を検討中だったりしまつ。
0457デフォルトの名無しさんNGNG
>>456
TIBDataSetでDBGridを使えるよ

IBDataSetをマウス右クリックして
「データセットの編集」を開いて
「キー項目」と「更新する項目」を選んで
「SQL文を生成」を実行すると
変更、追加、削除、更新の各SQLが自動生成され
(もちろん後でこれらのSQLを編集することも可)
これで何の支障もなくDBGridも使えるようになるよ
0458デフォルトの名無しさんNGNG
>>457 追記
もし「データセットの編集」がでてこないようだったら(Pro版だと無いかも)
ModifySQL、InsertSQL、DeleteSQL、RefreshSQL
の各プロパティに適切なSQL文を書き込むことで同等になる
0459デフォルトの名無しさんNGNG
ModifySQLの例
update MEMBER
set ID = :ID, NAME = :NAME
where ID = :OLD_ID

InsertSQLの例
insert into MEMBER (ID, NAME)
values (:ID, :NAME)

DeleteSQLの例
delete from MEMBER
where ID = :OLD_ID

RefreshSQLの例
Select ID, NAME
from MEMBER
where ID = :ID
0460448NGNG
>>458
「データセットの編集」とか言う名目じゃないけど右クリックしたらありました。
情報サンクスコさんです。
0461デフォルトの名無しさんNGNG
質問です。Del6+FireBird日本語版+IBX使ってます。

TIBDataSetでSelectSQLにSQL文を設定、OPENした後、
結果セットが存在しないならInsertSQL文を実行させようとしてるのですが、
EIBClientError・・・「use Open for a Select Statement」が発生しちゃいます。
ExecSQL実行する前にCloseはしてるのですが、何か抜けてるとこありますでしょうか?
0462デフォルトの名無しさんNGNG
>>461
TIBDataSetでExecSQLを使う条件は
・SelectSQLにSQL文が書かれていること
 →このことからExecSQLで実行されるのはSelectSQLだと分かる
・SelectSQL文に書かれているSQLが「Select文ではないこと」
要するに変則的な使い方になるわけですね

TIBDataSetはBDEにおけるTTable相当と考えて
特殊な処理はTIBSQL等他のコンポーネントを使うのが良いかと
0463デフォルトの名無しさんNGNG
まあ
if aIBDataSet.RecordCount=0 then aIBDataSet.Insert;
でいいと思うわけで

要するにTIBDataSetでExecSQLはあまり使わない方が・・・
0464デフォルトの名無しさんNGNG
>>463
たびたび有難う御座います。
TIBTableはTIBDatasetに、TIBQueryは、TIBSQLに移植を検討して見ます。
でも2ちゃんにしては珍しく良スレですね、ここは・・・(^^;
0465デフォルトの名無しさんNGNG
>>464
TIBSQL は DataControls コンポと連動できないってこと知ってるよね?
(要するに Delphi データベースフレームワーク外ってこと。)
画面表示する際は自前でやる必要があるから。(DataControls は使えない)
まあオレは TIBSQL しか使わないでやってるけど。
0466デフォルトの名無しさんNGNG
トゥワイズ・ラボさんの火の鳥1.0使って見ました。
Interbaseと違って「あれ?」って思ったんだけど、Interbaseなら

 SELECT ID FROM A, B WHERE A.ID = B.ID;

で結果セットがちゃんと返ってくるけど、火の鳥だと
 
 SELECT A.ID FROM A, B WHERE A.ID = B.ID;

みたいにテーブル指定してやらないと、「曖昧だ!テーブル名指定しろ!」って
怒られちゃうみたいだね。
0467デフォルトの名無しさんNGNG
>>466
IBってそんなSQL文でいいの?
0468デフォルトの名無しさんNGNG
>>466
FirebirdのDBがDialect3になってるでしょ?
0469デフォルトの名無しさんNGNG
どなたかお知恵をお貸し下さい

PROCEDUREの中で他のPROCEDUREは呼び出せないのですか?

いろいろとやってみたのですが、何やら怒られてしまいます。
0470デフォルトの名無しさんNGNG
>>468
確かに・・・これが何か?
0471デフォルトの名無しさんNGNG
>>470
IBの導入ガイドがあれば読むべし。
SQLダイアレクトに関する詳しい説明が載ってる
0472デフォルトの名無しさんNGNG
>>469
EXECUTE PROCEDURE でできるよ。

パラメータなし、戻り値なし)
EXECUTE PROCEDURE hogeA;

パラメータあり、戻り値なし)
EXECUTE PROCEDURE hogeB(param1, param2,...);

パラメータなし、戻り値あり)
EXECUTE PROCEDURE hogeC RETURNING_VALUES :retVal1, :retVal2,...;

パラメータあり、戻り値あり)
EXECUTE PROCEDURE hogeD(param1, param2,...) RETURNING_VALUES :retVal1, :retVal2,...;


DB作成者または SYSDBA 以外にも呼び出せるようにするには、
GRANT EXECUTE ON PROCEDURE hogeX TO USER1
とか
GRANT EXECUTE ON PROCEDURE hogeX TO PUBLIC

あるいは
GRANT EXECUTE ON PROCEDURE hogeX TO PROCEDURE hogeCallerProc
のような定義を入れる。
0473デフォルトの名無しさんNGNG
>>471
ダイアレクトは関係ねえよ。Firebirdも0.9Xの頃は
SELECT ID FROM A, B WHERE A.ID = B.ID;
で通ったんだよ。1.0でチェックが厳しくなった。
0474デフォルトの名無しさんNGNG
>>473
Firebird1.0からデフォルトでDiarect3を使用するようになったんだよ。
手持ちのFrebirdのDBにDiarect1で接続して試せ。

結果を確認したら回線切って首吊って死ね。
0475デフォルトの名無しさんNGNG
オマエらそんなことでムキになるなよ。
Firebird なんてまだマイナーなんだからさー、
せめて良スレにしてさー、使ってないヤツらにこのスレ参考にしてもらえるよう
努力してこうや。
0476デフォルトの名無しさんNGNG
>>473
加藤さんの本買え。

確かに、浅く広くって感じだけど、漏れには役に立ってる。
付録のSQLの説明も使えるし。まぁ、厚いからコピーとって使ってるけどな。
強いていえば、あそこまでやるならRubyからの接続法も入れてほしかったな。

あとは、Delphi/Kylixからの使い方をもっと突っ込んでほしかったなぁ。
それから、この時期に出すんだったら、1.5についても触れておいてほしかったなぁ。
あ、あと、ほかのデータベースからの移行方法とかも書いてあるとよかったな。

って、ぜんぜんダメみたいじゃん(w
でも、漏れは十分に元がとれたと思ってるぞ。
0477デフォルトの名無しさんNGNG
InterBase7 の InterClient は Type4 と謳ってるけど、
http://www.borland.com/interbase/pdf/ib7_datasheet.pdf
の3ページ目のダイアグラムみると GDS32.DLL 経由してるように
なってるんで、そうなると Type2 ということになるはずだけど、
ダイアグラムの方が間違ってるってこと?
それともクライアントに GDS32.DLL がないとダメってこと? (それならば Type4 ではない)

ちなみに Firebird の JDBC Type4 ドライバの方はソースちらっと見てみたけど、
GDS32 は経由せずに直に Firebird Server と通信しているようだったから
まさしく Type4 ということになる。
0478デフォルトの名無しさんNGNG
http://japan.pinkserver.com/under/index.html
勝手に他人のサイトを直リンク!!
「法的根拠はない!!」
「だから直リンしてます」
ハァ?
ネチケットも守れない痛い厨のサイト晒し
0479デフォルトの名無しさんNGNG
pinkserverってアダルトサイトじゃなかったっけ? 宣伝か?
0480デフォルトの名無しさんNGNG
>>474
手元にあったFirebird 0.94ではデフォルトがDialect3になってますが>>473の言う通り
SELECT ID FROM A, B WHERE A.ID = B.ID
で通りますよ。

0481デフォルトの名無しさんNGNG
複数のテーブルを使うときは明示した方が無難でしょ
後で項目を増やすことになったら何が起こるか分からない
0482デフォルトの名無しさんNGNG
ちょっと、おしえてくれ。スマソ。
IBConsoleでCSVのデータ3万件を取り込めないよね?
それとも取り込めるの?
0483 ◆gXAHOOOHj. NGNG
>>482
固定長形式なら取り込める。
Excelとか使って無理やり固定長形式に変換して
あとは外部テーブル作成してINSERTで一気に取り込めば
OKかと。
0484デフォルトの名無しさんNGNG
InterBase(FireBird)で以下のようなTableのとき

FieldA, FieldB, FieldC, FieldD, FieldE
FieldA,B,Cに主キーを設定

FieldA, FieldD, FieldEの条件式でデータを抽出したいので
別にFieldA, FieldD, FieldEにIndexを張ったのになぜか
Planで調べると主キーのほうが使用されて
検索が遅いのですがどうしてでしょう?

Oracleだと1秒未満の検索も
InterBaseだと5秒以上かかってしまいます

もしIndexの使い方がおかしければ、指摘して頂けないでしょうか?
0485デフォルトの名無しさんNGNG
>>484
order by 句で FieldA, FieldD, FieldE を指定すればその index 使うと思うが。
0486デフォルトの名無しさんNGNG
>>484
SET PLAN
使ってindex使っているかどうか確認したら。
0487484NGNG
order by 句で FieldA, FieldD, FieldE を指定して
Set Planを使用してみました

が、結果は同じ、プライマリーキーを使って検索をしてしまいます

ちなみに新しく作成したIndexのActiveはTrue,uniqueはFalseで
FireBirdのバージョンは1.0です
0488デフォルトの名無しさんNGNG
>>487
>order by 句で FieldA, FieldD, FieldE を指定して
order by 句での昇順or降順方向とインデックスの昇順or降順方向と一致してる?

例えば、
 create asc index idx1 on table1(FieldA, FieldD, FieldE);
のインデックスを作ったとしたとき、
 select * from table1 order by FieldA asc, FieldD asc, FieldE asc;
を実行すると idx1 インデックスを使うと思うけどな。
ただし、以下のように 1 つでも降順指定すると idx1 を使わないはず。
 select * from table1 order by FieldA desc, FieldD, FieldE;
0489484NGNG
返信ありがとうございます
>484です
>order by 句での昇順or降順方向とインデックスの昇順or降順方向と一致してる?
はい、再度確認をとりましたが一致しています

あれからいろいろと考え
プライマリーキーをDropIndexで削除(参照整合性のIndexのみ)したところ
ExceptionTimeが5.0348だったのが
0.0030(Indexは参照整合性のために作ったIndexを使用してるようです)になりました

これっていったいどういう事でしょう?
Indexの作り方が間違ってるのでしょうか?
0490484NGNG
追記です

他のTableもプライマリーキーをはずしたところ
10万件以上のTableですと明らかに検索スピードがアップします

もしかしてFireBirdってプライマリーキーは設定しない方がいいのかな?
(そんなわけないですよね(^_^;)
0491デフォルトの名無しさんNGNG
プライマリーキーを複数の項目に設定するというのは
おいらなら普通は避けるけどな〜

その辺が関係してるのではなかろうか(試してないけど)
0492デフォルトの名無しさんNGNG
>484
プライマリキーがどうこうじゃなくて、最適のインデックスを使ってくれないから
遅いってことだろ。
その現象が起こる、テーブルとインデックスの定義内容と SELECT 文提示してくれない?
こっちでも試してみたいから。
0493484NGNG
create table test(
FIELD1 FIELD1 not null,
FIELD2 FIELD2 not null,
FIELD3 FIELD3 not null,
FIELD4 FIELD4 not null,
FIELD5 FIELD5 not null,
FIELD6 FIELD6 ,
FIELD7 FIELD7 ,
FIELD8 FIELD8 ,
FIELD9 FIELD9 ,
FIELD10 FIELD10 ,
FIELD11 FIELD11 ,
FIELD12 FIELD12 ,
FIELD13 FIELD13 ,
FIELD14 FIELD14 ,
FIELD15 FIELD15 ,
);
0494484NGNG
create domain FIELD1 as char(2);
create domain FIELD2 as TIMESTAMP;
create domain FIELD3 as char(10);
create domain FIELD4 as char(4);
create domain FIELD5 as char(3);
create domain FIELD6 as TIMESTAMP;
create domain FIELD7 as varchar(10);
create domain FIELD8 as varchar(10);
create domain FIELD9 as varchar(10);
create domain FIELD10 as varchar(10);
create domain FIELD11 as varchar(10);
create domain FIELD12 as varchar(10);
create domain FIELD13 as varchar(10);
create domain FIELD14 as varchar(10);
create domain FIELD15 as varchar(10);
0495484NGNG
alter table test add constraint PK_TEST primary key (FIELD1, FIELD2, FIELD3, FIELD4, FIELD5);

select count(*)
from TEST
where FIELD1 = '01'
and cast(FIELD6 as date) between '2001/01/01' and '2001/12/31'
and FIELD4 = '0001'
order by FIELD1, FIELD6, FIELD4;
0496484NGNG
こんな感じです

プライマリーキーの代わりにUNIQUEでFIELD1,FIELD2...としても
遅くなります

外部キーは省略しました

これに10万件、適当なデータをいれれば大丈夫かと思います
0497デフォルトの名無しさんNGNG
>>496
ほとんど指示通りにやったけど495のselectは一瞬で実行されるよ(by Pen�V650MHz)
(ドメイン名とフィールド名が同じというのは気持ち悪かったのでそこだけ変えたけど)
0498デフォルトの名無しさんNGNG
確かにインデックスにプライマリキーが使われてるけど・・・遅くはないな〜
0499デフォルトの名無しさんNGNG
>484
その DDL に以下を追加してやってみた。(データ件数は1件とした。)
create index test_idx1 ON test(FIELD1, FIELD6, FIELD4);

確かに>>495を実行するとプライマリーキーのインデックス(RDB$PRIMARY1)使ってたよ。
(ところで、カウントを求めるクエリの場合は order by 句は関係ないからオプティマイザが削除してくれてるかも。)

ちなみに "select count(*) ..." を "select * ..." に変えて実行すると
ちゃんと test_idx1 インデックスを使うようになった。
ためしにプライマリキーを定義しなかった場合は、>>489 の言う通り、ちゃんと test_idx1 インデックスを
使うようになった。(order by 句を付けても付けなくても同じ)
(sql dialect 1 にしても同じ結果だった。)

ということで、結論は count 演算させる SELECT の場合に使われるインデックスはプライマリキー固定となってしまう。
(インデックスが使われない場合を除いて)

これは Firebird のバグじゃないか?
0500デフォルトの名無しさんNGNG
集合関数ってWHERE文の有無に限らず無条件にフルスキャンじゃなかったっけ?違ってたらスマソ
0501484NGNG
実行結果は一瞬でしたか・・・

だとするとなんだろう?

外部キーとプライマリキーやUniqueのIndexが重複しているからだろうか?
(主キーのTimeStampのField以外は全て外部キーを設定してある)

以下がその外部キーの設定状態です
alter table test add constraint FK_TEST_MST1 foreign key (FIELD1) references MST0(MST0_FIELD1) on update CASCADE;
alter table test add constraint FK_TEST_MST2 foreign key (FIELD1, FIELD4) references MST1(MST1_FIELD1, MST1_FIELD2) on update CASCADE;
alter table test add constraint FK_TEST_MST3 foreign key (FIELD1, FIELD5) references MST2(MST2_FIELD1, MST2_FIELD2) on update CASCADE;
/*主キーの外部キー設定はここまで*/
/*後は各フィールド毎に必要な外部キー*/
alter table test add constraint FK_TEST_MST4 foreign key (FIELD8) references MST3(MST3_FIELD1) on update CASCADE;
alter table test add constraint FK_TEST_MST5 foreign key (FIELD1, FIELD10) references MST4(MST4_FIELD1, MST4_FIELD2) on update CASCADE;

ちなみに
select *
from TEST
where FIELD1 = '01'
and cast(FIELD6 as date) between '2001/01/01' and '2001/12/31'
and FIELD4 = '0001'
order by FIELD1, FIELD6, FIELD4;
としても、同じように遅いです
(本当はこっちの処理を行いたかったので)

現在は主キーや余分なIndexを削除して対処しています
0502bloomNGNG

http://www.agemasukudasai.com/bloom/
0503デフォルトの名無しさんNGNG
>>501
だから >>495 のプライマリキー
>alter table test add constraint PK_TEST primary key (FIELD1, FIELD2, FIELD3, FIELD4, FIELD5);
を定義しないとちゃんと他のインデックスが使われる。
結論は >>499 にある。
0504デフォルトの名無しさんNGNG
InterBase でも >>499 と同じ結果。
よって Firebird の特有の問題ではなさそう。
0505484NGNG
>503
はい、>499の結論は理解しています

任意のIndexを設定してそれを使用していることも確認しました

しかし、プライマリーキーであれ、任意で設定したインデックスであれ
なぜか、それを使用するとSelectの実行結果が遅く(10秒ぐらい)なってしまうのです

そこで、外部キー以外を全て削除して、再度実行すると一瞬(0.05秒ぐらい(^_^;)で結果が
返ってきます

DataBeseの検証なども行いましたが異常は無し

この不可解な事にどう理解すべきか頭を悩ませているところです
(Indexが増えれば更新が遅くなるのは理解できますが、Select文が遅いというのは
聞いたことがないもので・・・)

しつこくてすみません。
0506484NGNG
その後いろいろとテストしてみました
セレクト文は一緒です
select * from TEST
where FIELD1 = '01'
and cast(FIELD6 as date) between '2001/01/01' and '2001/12/31'
and FIELD4 = '0001'
order by FIELD1, FIELD6, FIELD4;

プライマリーキー有り
その他のindex無し
--------結果----------
プライマリーキーが使用され
かなり遅い
----------------------

プライマリーキー有り
[Field1,6,4]のindex有り
--------結果----------
[Field1,6,4]のIndexが使用されるが
かなり遅い
----------------------
0507484NGNG
プライマリーキー無し
[Field1,4,6]のindex有り
--------結果----------
[Field1,4,6]のIndexが使用され
速い!
----------------------

プライマリーキー有り
[Field1,4,6]のindex有り
--------結果----------
プライマリーキーが使用され
遅い
----------------------

プライマリーキー無し
その他のindex無し
--------結果----------
当然遅い
----------------------

どうやら、Indexを定義するときFieldの順番通りに
設定しないとどうもフルスキャンしてしまっているような・・・
それとも私の環境だけだろうか?
0508デフォルトの名無しさんNGNG
PostgreSQLはCSVファイルを取り込むのに、\copy コマンドを使えるのですが、
InterBaseはダメなんですか?
CSV取り込みのないDBって、使えないじゃん
0509デフォルトの名無しさんNGNG
>484
最良のインデックスを選択しないのはオプティマイザの実装がショボイんだろうね。
↓のリクエストもあるようだし。
Better query optimizer
http://sourceforge.net/tracker/?func=detail&atid=109028&aid=451912&group_id=9028

>The current optimizer often does a poor job of
>selecting the optimal indexes.
0510デフォルトの名無しさんNGNG
>>508
>>482-483 を見よう
0511 ◆gXAHOOOHj. NGNG
今見てみたんだがExcelって固定長形式で
データ吐き出せないみたい。
Access使うとか自分で変換スクリプト書くとか
しないと駄目かな。
0512デフォルトの名無しさんNGNG
Del+IBX で CSVファイル読み込み→DBテーブル書き込み プログラム作った方が早いと思うよ。
Import/Export 対応にして汎用に作れれば便利かも。

こんな感じ。(あくまでも例です。)

csv2tbl-table1.ini
[environ]
dbPath=127:0:0:1:c:\db1.gdb
tableName=table1
colCount=2
[col1]
fieldName=ColNameA
dataType=integer
isNullable=false
format="%2d"
[col2]
fieldName=ColNameB
dataType=string
isNullable=true
format=
0513512NGNG
ちなみに Export だけなら Marathon や IBQuery 使えばできるよ。
特に IBQuery ならば、以下の形式で出力できる。
・dBase III+
・MS Excell
・HTML
・CSV
・Raw
0514デフォルトの名無しさんNGNG
>484
Marathon 使ってみ。
これに「Performance Analisis」っていう画面があって、実行したクエリのインデックスのリード回数が
グラフで表示されるから参考になるかもしれない。
「SQLTrace」っていうクエリのトレース内容が表示される画面もある。
0515デフォルトの名無しさんNGNG
>>495 の
>alter table test add constraint PK_TEST primary key (FIELD1, FIELD2, FIELD3, FIELD4, FIELD5);
を
alter table test add constraint PK_TEST primary key (FIELD1);
または
alter table test add constraint PK_TEST primary key (FIELD1,FIELD2);
にすると、まともな index を使うようになった。
ちなみに
alter table test add constraint PK_TEST primary key (FIELD1,FIELD2,FIELD3);
のように3個のカラムをプライマリキーに設定するとダメだった。

ということで、結論はプライマリキーは3カラム以上の組み合わせにすると、
オプティマイザの挙動がおかしくなる(*場合がある*)。
(>>499 の結論は撤回します)

ただし >>506-507 の index 使っても遅くなる問題は未解決。だよね?
0516デフォルトの名無しさんNGNG
>>515
有益な報告ですね
どうもありがとう
0517484NGNG
>514
Marathonは愛用しています
しかし、1.5(1.6?)というバージョンのせいか
Performance Analisisを有効にすることが出来ません
もしよければどこのオプションで有効にするか教えて頂けないでしょうか?

>515
はい、遅くなる現象は続いています
0518デフォルトの名無しさんNGNG
>>517
>しかし、1.5(1.6?)というバージョンのせいか
>Performance Analisisを有効にすることが出来ません
>もしよければどこのオプションで有効にするか教えて頂けないでしょうか?
こちらでも 1.6 使ってるよ。
特に何も設定した覚えはないけどな〜。(まだそんなに使い込んでるわけじゃないから詳しくないです)
とりあえず、ただ単にメインメニューの [Tools] → [SQL Editor...] で
「SQL Statememt」ウィンドウ開いて、「Edit View」タブページに任意のSQL 文入力して
実行すると、「Performance Analysis」タブページにグラフが表示されるけど、
そのページに表示されない?それともそのページ自体がない?

一応 [Help] → [About] ダイアログで表示される内容(Version)は以下の通りです。
...
Powered by IBObjects (3.4.B)
Version 1.6
Build 16
...

>はい、遅くなる現象は続いています
できたらプライマリキーを
 alter table test add constraint PK_TEST primary key (FIELD1);
にして試してもらえないかな?
(関係ないかも知れないけど。)
0519484NGNG
「Performance Analysis」タブページはあるのですが
そこに
'There is no performance data being colected,
To colect display data check
"Show performance Data" in the Object Menu"'

とあってグラフは表示されませんでした

>alter table test add constraint PK_TEST primary key (FIELD1);

データの構成上プライマリーキーを一つにすることは出来ませんでした
すみません
0520484NGNG
あれから実験ちょっとした実験をしてみたのですが
ちょっと見ていってくれませんでしょうか?

>493-495のTableでSQLでプライマリーキーを設定しないで
以下のIndexを作成します
create index TEST_IDX1 on uritrn(FIELD1, FIELD4);
create index TEST_IDX2 on uritrn(FIELD1, FIELD6);
create index TEST_IDX3 on uritrn(FIELD1, FIELD4, FIELD6);
create index TEST_IDX4 on uritrn(FIELD1, FIELD10, FIELD11);
create index TEST_IDX5 on uritrn(FIELD1, FIELD10, FIELD12, FIELD15);
create index TEST_IDX6 on uritrn(FIELD1, FIELD10, FIELD11, FIELD13, FIELD14, FIELD15);

さて同じSQL(ORDER BY FIELD1, FIELD6, FIELD4)を実行した場合
どれが使用されるかというと
なぜか一番下のTEST_IDX6が使用されます
もちろん速度は遅いです
ORDER BY句を削除しても同じでした
TEST_IDX2,かTEST_IDX3を使用するだろうと期待していたのですが
こういう結果になりました。
これって普通?
0521デフォルトの名無しさんNGNG
>>520
uritrn => test だね。

>create index TEST_IDX3 on uritrn(FIELD1, FIELD4, FIELD6);
FIELD1, FIELD6, FIELD4 の順じゃないの?

まず、 >>495 は行数を取得するだけだから order by 句は無視されると思う。
>>495 を "select * ..." にして実行すると、
TEST_IDX3 (FIELD1,6,4 の順にしたやつ)がちゃんと使われる。
ちなみに order by 句を削除すると(where句だけ) TEST_IDX6 が使われる。
0522デフォルトの名無しさんNGNG
>>521 の追加
ちなみに
select *
from TEST
where FIELD1 = '01'
and cast(FIELD6 as date) between '2001/01/01' and '2001/12/31'
and FIELD4 = '0001'
order by FIELD1, FIELD4;
だと、TEST_IDX1 が使われる。
0523484NGNG
>FIELD1, FIELD6, FIELD4 の順じゃないの?

この順番でIndexを作成すると検索スピードが遅くなるのですが
わたしだけなのかな?

>>>495 を "select * ..." にして実行すると、
ここの部分の変更を書き忘れてました
すみません

なんだか長々とスレを汚してすみません
0524デフォルトの名無しさんNGNG
ちと聞きたいのだが知ってるヤシいたら教えてくんない?
IBX の TIBDataBase でわかんないプロパティがあるんだけど
AllowStreamedConnected って何?
ちなみに IBX は↓から落とした Del5 用の最新版5.04でつ。
http://codecentral.borland.com/codecentral/ccweb.exe/author?authorid=102
0525524NGNG
>>524
追記ですまそ。Del5 についてくる IBX 初期版 にはこのプロパティないのよね。
0526デフォルトの名無しさんNGNG
>>524
試せばわかるぞ。

AllowStreamedConnected = False
Connected = True
DBGrid に表示するようにしておく。

これで起動してみそ。
0527デフォルトの名無しさんNGNG
うちのInterBase6 は、以下のトリガーが、InterActiveSQLで動かない
んですよー(ToT)
トリガーが動かすときは、何か設定が必要なんすか?
偉い人、おしえてん。

CREATE TABLE first_table (
field_X INTEGER,
field_1 INTEGER,
field_2 INTEGER,
field_3 INTEGER,
);

CREATE GENERATOR first_table_id;
SET TERM !! ;
CREATE TRIGGER first_table_unique_id FOR first_table
BEFORE INSERT POSITION 0 AS
BEGIN
new.field_X = gen_id ( first_table_id, 1 );
END;
SET TERM ;!!
0528デフォルトの名無しさんNGNG
ところで InterActiveSQL って何?
0529デフォルトの名無しさんNGNG
InterActiveSQL
InterBaseに対して,SQLコマンドを対話型で入力できる
略してISQL
0530デフォルトの名無しさんNGNG
>>529
それをいうなら "InterActive" じゃなくて "Interactive" だよ。
InterActiveSQL とかいう言語があるのかと思ったよ。
 
0531デフォルトの名無しさんNGNG
「ISQLでトリガーを使う」という状況がよー分かりましぇん

トリガーってアプリ/サービスに対してデータベースの変更を通知するのに
使うものだと思ってたけど
0532デフォルトの名無しさんNGNG
>>531
それはイベント(post_event)のことでは。
トリガとは違うぞ。

>>527
どう動かない?
0533デフォルトの名無しさんNGNG
>>530
想像力の乏しい奴だな
0534デフォルトの名無しさんNGNG
Firebird と InterBase の違いは?
0535532NGNG
create generator gen_aid;
create trigger set_aid for tb_test
before insert
as begin
new.aid = gen_id(gen_aid,1);
end;

なんかをISQLで読み込ませると、

Unsuccessful metadata update
DEFINE GENERATOR failed
attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_11"
Statement: create generator gen_aid

なんてエラーが出る。
0536つまりNGNG
ISQLでトリガーの部分が全然実行できないんす。
なぜかなー。わからん。
0537デフォルトの名無しさんNGNG
>>534
Firebird はバグの固まり。だけどソース付きなので修正できる。
InterBase は有料。
0538デフォルトの名無しさんNGNG
table1とtable2をunionで結合させたいのですが
Fieldの無い部分をNullで補うとうまくいきません
Oracleでは下の記述は通るのですが
FireBirdでは通りません

select
code fcode,
dateymd fdate
from table1
union
select
code fcode,
(null) fdate
from table2
;
どなたかわかるかた
おねがいします

0539デフォルトの名無しさんNGNG
>>538
列が同じ型でないとUNIONで結合はできませんでつ。
0540538NGNG
oracleみたいに、Nullで空のフィールドにすることは
出来ないのですね

とても勉強になりました
0541デフォルトの名無しさんNGNG
>>538
cast(null as データ型) でどうだ?
データ型にはドメインは指定できないみたいだから、
組み込みデータ型で指定すること。
0542538NGNG
おおお!!!!
出来ました!出来ました!!

なるほど、、キャストかぁ〜
Unionの表現の幅が広がって
今まで以上にFireBirdを使えそうです

ありがとうございました
0543デフォルトの名無しさんNGNG



   ひろゆきは帰った?wwwww
0544デフォルトの名無しさんNGNG
ニュー速+

【2ch】管理人のひろゆき氏がqbサーバで全レスIP記録の実験を開始
http://news2.2ch.net/test/read.cgi/newsplus/1042017485/
0545デフォルトの名無しさんNGNG
要するに、管理人がアフォということと、
一部の信者はキチってことの二言に尽きますな
法律を少しでも勉強した者、
もっと言えば人並みの常識を備えた人ならば、
今回の敗訴は目に見えていたもんね
ネットなら何書いてもいいなんて暴論が罷り通るほど、
社会は冷徹でもバカでもないってことですな
やっぱ権利は濫用しちゃいけませんな
0546デフォルトの名無しさんNGNG
んvbんv
0547デフォルトの名無しさんNGNG
どこよ。
0548デフォルトの名無しさんNGNG
>>264
合法的なのを目指すなら、削除システムを実装するだけ。
アングラなのを目指すなら、流動的なDAT分散機能をつける。
0549デフォルトの名無しさんNGNG
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 138720人 発行日:2003/1/9

年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。

そんなわけで、年末に予告したIP記録ですが実験を開始しています。

「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0550デフォルトの名無しさんNGNG
すんげーくさいウンコ出た。
この匂いを共有したい。
0551デフォルトの名無しさんNGNG
>>589
ちょっと違うが今までがそんな感じだったんよ。
「(善意であろうが悪意であろうが)確認できない以上利用者が真偽を判断すべきであり、
要請があっただけで全て削除するべきではない。」
というのがひろゆきの主張。
嘘を嘘と〜の名言もこれに繋がる。

これに対して動物病院訴訟における地裁・高裁の判断は、
「外部から確認できない以上当事者が中傷だと主張し削除の要請をした場合は、管理人は削除すべき。」

今後はこれに倣い当事者側が中傷だと主張さえすればIP公開する必要が出るかもしれない。
(もちろん警察なり裁判所の正式な提出要請があってからになるだろうけど)
なお、書き込んだ者はその書き込みに対し責任を負うべし、ってのは賛成だが。
いずれにしろ善意の告発は難しくなると思われ。
0552デフォルトの名無しさんNGNG
>>196
その登場はずるい・・・ヽ(`Д´)ノウワァァン
0553デフォルトの名無しさんNGNG
>>196
おはよー
0554デフォルトの名無しさんNGNG
上告か、
0555デフォルトの名無しさんNGNG
大好きな彼とはじめてやろうとしたとき、やっぱ立たなくて、
インポなのかと、ほんとまじで悩んだYO
でもフェラしてあげると、立たないのにすごい気持ちよがって、
「入れたいよ〜」って言ってたけど、立たないから無理だった。
「一人で出していい?」って言われたけど
「一人でいっちゃダメ!!」っていってから、その日はあきらめたんだけど、
その言葉が良かったらしくて、次に会ったときは、舐めなくてもギンギンに立ってました(笑)
なんかその日以来、オナニーもせずずっと我慢してたんだそうな・・・
http://freehost.kakiko.com/hangyaku
0556デフォルトの名無しさんNGNG
IP記録をしなければ、695が病院の悪口を書き込んでひろゆきの裁判を増やしてくれるわけだな。
0557デフォルトの名無しさんNGNG
ウラの取れてない内部告発はもう出来ないというわけか?
0558デフォルトの名無しさんNGNG

スレ救出隊って、「スレを削除されないように活動する人たち」って
意味でしょうか?
0559デフォルトの名無しさんNGNG
IP記録自体は以前から一部でやってたんだが、今回のはどうも違うシステムらしいな。
SETTING.TXTから分離して処理してる様なんだが。
0560デフォルトの名無しさんNGNG
2chのIDてIPを変換してるんだっけ?
だったら、全板強制IDにして暗号キーだけ保存しておけばいいんじゃないの?
0561デフォルトの名無しさんNGNG
2ちゃんねるは、新手の総会屋なんだよ!
0562デフォルトの名無しさんNGNG
ボルタレンじゃなくて??
0563デフォルトの名無しさんNGNG
誰か
IDにIPを出すことを要求します
ってスレ立てておながい
0564デフォルトの名無しさんNGNG
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 139038人 発行日:2003/1/10

なにやら、連日メルマガだしてるひろゆきです。

そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。

重くなって落ちたりしてもご愛嬌ってことで。。。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0565デフォルトの名無しさんNGNG




   で、相当な言論規制がされたわけだが。


0566デフォルトの名無しさんNGNG
てゆうか晒されて困るなんて根性なしは荒らすなってだけで、
荒らすヤツは荒らすし、白化も黒化も結局いるわけだ。
素人にはお勧めできなくなったってこったな。
0567デフォルトの名無しさんNGNG
(´-`).。oO(早く潰れろ屑掲示板…っと)
0568デフォルトの名無しさんNGNG
国内サッカー板 また落ちてます?
0569デフォルトの名無しさんNGNG
「年内に」だったけどどうしたんだろうね。

【2ch】2chがオークションサイト立ち上げ?
http://news2.2ch.net/test/read.cgi/newsplus/1036941670/
0570デフォルトの名無しさんNGNG
ロケット団ハッケソ
0571デフォルトの名無しさんNGNG
やすゆきも小心者だからね
0572デフォルトの名無しさんNGNG
最後は、4桁だったみたいだね
0573デフォルトの名無しさんNGNG
つうか全員逮捕だおまいら
0574デフォルトの名無しさんNGNG
どうせ敗訴しても400万円を2ちゃんねらーのみなさんがカンパするんでしょ?
0575デフォルトの名無しさんNGNG
マジでIPってなんですか?
0576デフォルトの名無しさんNGNG
だからひろゆきもまともな2ちゃんのみんなも「不当判決だ」って怒ってるわけなのだが(^_^;)
0577デフォルトの名無しさんNGNG
どうしても

倉庫番 ★≠BG ★≠夜勤 ★

ということにしておきたいみたいだけど、バレバレで萎えるw
0578山崎渉NGNG
(^^)
0579デフォルトの名無しさんNGNG
はぁぁぁ。あと、1週間以内で生理・・・。

何事にもむかついてたまらないっ!
生理前って、ブルーになったり、いらいらしたり。。。
ほんと勘弁してって感じ。
0580デフォルトの名無しさんNGNG
保守age染ます
0581山崎渉NGNG
(^^)
0582デフォルトの名無しさんNGNG
こんにちは
質問させて下さい

いつも同じレコードで
下記のようなエラーがでるけどどうしてでしょう?

ISC ERROR CODE:335544321



ISC ERROR MESSAGE:

arithmetic exception, numeric overflow, or string truncation

Cannot transliterate character between character sets


データが壊れてる?
0583デフォルトの名無しさんNGNG
>>582
キャラクタセット指定してないからでは?

ってかどういう環境でやってるのか提示せよ。
0584582NGNG
プロシージャ内のデータ抽出で起こり
なんとか解決できました

原因は文字の連結を
||ではなく+でやっていいたことによるものでした

ご迷惑おかけしてすみません

プロシージャを書いてて思ったのですが
OracleのSubStrような機能はないのでしょうか?
0585デフォルトの名無しさんNGNG
InterBaseの場合、その手の関数はUDF(ユーザ定義関数)として実装
されているのです。

Windows版の場合なら、ib_udf.dllというファイルがIBを入れたディレクトリ
のどこかにある筈です。これの中に拡張関数が入っていて、開発者側
で使いたいものだけDBに登録して使用します。
DBへの登録方法などはIBのドキュメントに載っています。

関数の仕様に多少の制限はありますけど、substrやstrlenなど
ある程度は揃っています。
0586582NGNG
ありました
登録も付属のsqlファイルで出来ました
ありがとう
0587デフォルトの名無しさんNGNG
InterBase(FireBrid)のストアドで
配列を使いたいのだけど
ヘルプを見た限りではのっていないような・・・?

もし出来たら宣言の方法などもふまえて
教えていただけないでしょうか?
0588デフォルトの名無しさんNGNG
>>587
SQL文での配列操作はできなかったはずだけど。
配列使うならAPI使うしかないよ。
0589587NGNG
Marathonで配列が簡単に作れるから
アクセス方法も簡単だと思ってました

API...今の私には敷居が高そうです(^_^;
(FireBirdでストアドのパッケージが使るようにならないかなぁ〜)
0590デフォルトの名無しさんNGNG
selectで選択したレコードを
新規のテーブルに割り当てたいけど
Oracleの
create table newtable as (select * from oldtable where field <> 0);
みたいなSQLはFireBirdではどう書くのでしょう?
0591デフォルトの名無しさんNGNG
>>590
>Oracleの
>create table newtable as (select * from oldtable where field <> 0);
それに相当するような機能はないよ。

やるとしたら、oldtable と同じ構成の newtable を作ってから、
 insert into newtable select * from oldtable where field <> 0;
でやるしかないだろうね。
0592山崎渉NGNG
(^^)
0593デフォルトの名無しさんNGNG
月始のDateや月末のDateを返す
UDFってどこかにないものでしょうか?
0594デフォルトの名無しさんNGNG
>>593
そんなのないと思う。
月末の割り出し方ならとりあえず、
 cast('2003/2/1' as Date)-1
のようにすれば簡単。(この場合、2003/1/31 となる)

年と月の比較なら次のような手もある。
 select * from hoge
 where
 extract(year from date_field)=2003 and
 extract(month from date_field)=1

(date_field が 2003年1月のものを抽出)
ただし、"extract" って IB で使えるかどうか知らない。(FirebirdならOK)
0595593NGNG
なるほど
月末をもとめるときは
そのようなやり方をするのですね!
目から鱗です

extract...
これも有効に使わせて頂きます!
(実は年間の売上を求めるストアド作成中で
早速extractを使いたいと思います)

それともう一つ二つ質問させて下さい
今、FireBirdのHPをみて1.5のβが出てるようなのですが
何が変わっているのでしょう?
また、現在Zipで配布されているようで
今使用しているFireBird(1.02)に上書きしてインストールする
のでしょうか?
0596593NGNG
593です
ExtractをFireBird1.02でためしたところ
ERROR: expression evaluation not supported
とエラーが出てデータの抽出が行えません

何か設定を見逃しているのでしょうか?
0597デフォルトの名無しさんNGNG
>>596
オレも FB1.02 だけど問題ないけど。(Win2000)
エラーが出たときのSQLステートメントは?
とりあえず isql で以下でテストしてみるとか。
 select extract(year from cast('now' as date)) from rdb$database;
0598593NGNG
EXTRACT出来ました
原因はInterBaseでデータベースを作成したためでした
バックアップをとって、その後FireBird1.02でデータベースを作成
そしてリカバリしてデータを復元したら出来るようになりました
すみません、お騒がせしてしまって・・・

そういえばFireBirdって
どのPlanを使用するか決めることが出来るのですね
こんな感じで
CREATE INDEX employee_hire_date_month_idx
ON employee COMPUTED BY
(EXTRACT(MONTH FROM hire_date))

SELECT * FROM employee
WHERE EXTRACT(MONTH FROM hire_date) = 1
PLAN (EMPLOYEE INDEX (EMPLOYEE_HIRE_DATE_MONTH_IDX))

Webを巡回して今更気づきました(^_^;
0599デフォルトの名無しさんNGNG
FireBirdってcaseは使える?
どこかで使えるっていうのを見たのですが
思い出せずやってみたのですが出来なくて。。。

過去ログにextract等の関数をまとめたサイト、
もしあれば教えて頂けないでしょうか?
0600デフォルトの名無しさんNGNG
過去ログにextract等の関数をまとめたサイト、
             ↓訂正
過去ログにextract等の関数があがっていますが
このような関数ををまとめたサイト、

すみません
0601デフォルトの名無しさんNGNG
こんにちは。
timestamp型のデータフィールドに対して、yyyy/mm/ddのフォーマットで
抽出はかけられないでしょうか?

select * from hoge where cast(hogedate as date) = '2002/04/10'
でいけるかなと思ったんですけどムリでした。

↓こういうのならできるんですけど。
select * from hoge where cast(hogedate as char(10)) = '6-AUG-2002'

御教授おながいします。


0602デフォルトの名無しさんNGNG
>>601
cast('2002/04/10' as date)
でいいのでは?
0603601NGNG
>>602
select * from hoge where hogedate = cast('2002/04/10' as date)
はダメで
select * from hoge where cast(hogedate as date) = cast('2002/04/10' as date)
もダメです

select cast(hogedate as date) from hoge
をしてみると結局タイムスタンプ型で帰ってきちゃうんですよ
使用しているのはIB6ですが


0604デフォルトの名無しさんNGNG
>>603
試したが IB じゃダメみたいだね。FB ならいいんだけど。
だけど cast('4/10/2002' as date) なら OK だったから
これでやるしかないんじゃないかな。ダメ?
この形式なら FB でも OK だから
もし今後 FB に移行する際には修正しなくていいからね。
0605601NGNG
>>602,604
ありが�d

でも、うまくいかないです。
604は↓ですよね?
select * from hoge where cast(hogedate as date) = cast('6/08/2002' as date)
0606デフォルトの名無しさんNGNG
>>605
IB5 だと OK だったけど。IB6 はダメなんだ? 何で???

>select * from hoge where cast(hogedate as date) = cast('6/08/2002' as date)
大して変わらないと思うけどこっちでは
select cast('4/10/2002' as date) from rdb$database;
で確認。
0607デフォルトの名無しさんNGNG
↑
isql で確認。
0608601NGNG
やっぱりダメです。ちなみに今まではBDE経由でやっていて、
ISQLで試してみたんですが、Conversion error from string "13/07/2002"
とかでちゃいました!'2002/07/13'とすればNullが返ってくる、そんなところです。

とりあえず、(hogedate as char(10)) = '6-AUG-2002')でやろうかなと思ってます。
付き合ってくれた人ありがとでした。



0609デフォルトの名無しさんNGNG
>>608
>ISQLで試してみたんですが、Conversion error from string "13/07/2002"
そりゃそうだよ。これだと 2002年13月7日ということだから。
もう一度 isql で 7/13/2002 で試してみ。
0610601NGNG
見落としてました。。
でも




Nullですた。
0611デフォルトの名無しさんNGNG
>>610
スマソ、今テスト環境がないからクソレスかもしれんが、
'2002-07-13'
だとどうよ?
0612デフォルトの名無しさんNGNG
>>610
>Nullですた。
>>608
>とかでちゃいました!'2002/07/13'とすればNullが返ってくる、そんなところです。

Null ってことは日付形式がダメなんじゃなくて、
 cast(hogedate as date) = cast('6/08/2002' as date)
が一致してないってことなんだ?
であれば、形式は "年/月/日", "月/日/年" でもいいじゃん。
一致しないのは別の問題では。
0613デフォルトの名無しさんNGNG
どなたかご教授ください

UNION句を使って
複数のテーブルを結合したいのですが
OREDER BY 〜
の指定がうまくいきません

SELECT A_DATE YMD, A_KIN KINGAKU
FROM A_TABLE

UNION

SELECT B_DATE YMD, B_KIN KINGAKU
FROM B_TABLE

ORDER BY KINGAKU, YMD /*ERR*/

としたいのですが、うまくいかないのです
FIREBIRDではUNION句でのソートは認められないのでしょうか?
0614デフォルトの名無しさんNGNG
日付周辺の仕様ってDialect関係あるんじゃなかったっけ?
FBでOKってことはDialect3?
0615614NGNG
下げてどうする
0616デフォルトの名無しさんNGNG
すんません、InterBase5.6について聞きたいんですが
IBのデータベースを作ってそこに約40GBのテストデータを
入れてみるというテストをしているのですが、約2GBくらい入れたところで
毎回処理が止まってしまいます。
IB5.6っていうのは2GB以上のデータというのは流し込めないのでしょうか?

環境としては
Redhat6.2
InterBase5.6
を使ってるのですが、もしかしてLinuxが悪さしてるとかってことも
あるんでしょうか?
質問ばかりですいませんが分かりましたら是非ご教授お願いします
0617デフォルトの名無しさんNGNG
>>616
Linuxってたしか2.4系のカーネルじゃないと2GB以上のファイルって
扱えないんじゃなかったっけ?

Redhat6.2ってカーネルいくつ?
0618デフォルトの名無しさんNGNG
ちなみにInterbaseにデータベースのサイズ制限は無かったと思う。
0619デフォルトの名無しさんNGNG
そうなだ。
0620デフォルトの名無しさんNGNG
ほかのディストリビューションにした方がええ。
Red Hat 6.2 はこの3月でアップデート終了だ。
0621616NGNG
>>617-620
レスありがとうございます。
どうやら調べたらカーネルが2.2くらいだったので変更しなきゃだめなんすね
ほんとすいませんでした

後上乗せで申し訳ないのですが5.6から6に変わったときの変更点って
どこにのってるんでしょうか?
JapanのボーランドのHPには特徴って部分でちょこっとだけ載ってましたが
あんだけなんでしょうか?
もし載ってるサイト等ご存知でしたら是非そこもお願いします
0622デフォルトの名無しさんNGNG
>>621
「InterBase5から6への移行ガイド」
http://bdn.borland.com/article/0,1410,26417,00.html
この辺かなぁ。
0623デフォルトの名無しさんNGNG
>>621
移行するのであれば Firebird にしたらどう?
客の指定なら仕方がないけど、自由に選べるのなら Firebird をお勧めします。
0624デフォルトの名無しさんNGNG
T.Maki さん、行方不明
死亡か?
0625デフォルトの名無しさんNGNG
>>624
メール送っても返事が無い。だれか詳細を...
0626デフォルトの名無しさんNGNG
InterBase7 日本語版
http://www.borland.co.jp/news/ib7_ja.html
0627デフォルトの名無しさんNGNG
おそれいりますが、 Firebird と mySQL
とのパフォーマンスを比較した方はいないでしょうか
おおよそで結構ですので、お教えいただけると
ありがたいのですが。
0628デフォルトの名無しさんNGNG
>>627
ここはInterBaseのスレなんですけど。
0629デフォルトの名無しさんNGNG
誰かInterBase 7使用したやつ情報希望。
米国のサイトで英語版の体験版が落とせるらしいが・・・・
0630デフォルトの名無しさんNGNG
InterBase 7ってDelphi7 Studioにも付いて来るじゃなかった?
俺はバージョンアップに付き合いきれんのでDelphi5のまま。

SMP対応らしいからPen4 3.06Gで動かしたときの様子が知りたいね。
0631デフォルトの名無しさんNGNG
行ロックをかけたいのだが
Oracleの for update (nowait)
のようなものはない?

イベントアラーター使わんと駄目なのかな?

って、ストアドとトリガーしか使えなかったね
イベントアラーター・・・

う〜ん・・・
0632デフォルトの名無しさんNGNG
>>631

OracleのようなSELECT FOR UPDATEは無いがロックしたい行が特定出来るなら
UPDATE SET FIELD1 = FIELD1 WHERE xxxxxx
と最初にする事で明示的にレコードロックはかけられる。

イベントアラータ使ってマニアックに実装するよりこちらが吉。


0633デフォルトの名無しさんNGNG
>>632
なるほどその手があったか!
早速試してみます

返信ありがとう
0634デフォルトの名無しさんNGNG
先生方、お願いします。

Date型(TimeStamp)のエンコード、デコードって出来ます?
MarathonのSQL Code Snippets のストアドで
出来そうな気がしたので
それらしきストアドをコピペでコンパイルしたけど
'そんなストアドないよ'見たいなエラーで出来ませんでした

そのデコードを使ってやりたいことは
TimeStamp型のMonthをインクリメントしたいのですが
他にいい方法がありますか?
Dayのインクリメント、デクリメントは直接出来るようですが・・・
0635デフォルトの名無しさんNGNG
質問です。
トランザクションをコミットする方法にCOMMITとCOMMIT RETAINがあるのですが
結果セットを維持する必要があるとき以外はCOMMITを使用し、維持する必要の
あるときのみCOMMIT RETAINを使用するべきでしょうか?

例えばSELECTを発行し、その内容を使用して処理を行うというありふれた場合でも
1.SELECT発行 → 処理 → COMMIT
とする方法と
2.SELECT発行 → COMMIT RETAIN → 処理
とする方法の二つがあると思うのですが、どちらがより望ましい方法なのでしょうか?

効率、保守性等も含め、アドバイスお願いします。
0636をたNGNG
select で 100件 抽出できるテーブルから、
何らかのソートをかけて、
上位 10件だけを 抽出するには どうしたらいいでしょうか?

をしえて君ですみませぬ。
0637をたNGNG
SQL Server でいうところの SET ROWCOUNT みたいなやつです。
0638デフォルトの名無しさんNGNG
>>636
New Features In InterBase 6.5
http://community.borland.com/article/0,1410,28107,00.html
の "The ROWS Clause" のことかな?
(IB6.5 は使ってないから知らないけど。)

Firebird なら >>414 参照。
0639をたNGNG
>>638
レスありがとうございます。
しかし 当方、 IB5.6 でございまして・・・・   (わーーーん)
0640デフォルトの名無しさんNGNG
>>639
思い切って Firebird に移行したらどう?
(ちなみにオレも IB から Firebird に移行している。仕事でも使ってるし。)
IB5.6 の DB ファイルそのまま扱えるし、機能的にも IB5.6 より上だし。
(商用)IBのような同時接続の制限もないからいいと思うが。
0641デフォルトの名無しさんNGNG
FireBird だけは止めたほうがいいよ。
限定的にしか動かないし、IB に対する拡張部分はバグが多いし。
ソースをメンテナンスするだけの余力がある人だけが使うべき。

やりたいのは IB/FireBird を使うことなのか?それとも DB を使ったアプリを作ることなのか?
前者なら FireBird でも良いけど、後者なら黙って IB をアップデートするか
他社の(サポートつき)DB を買いなさい。

タダが一番高いんだよ。
0642デフォルトの名無しさんNGNG
>>641
某日社員?

俺 Firebird 使ってるけど安定して使えてるが。(Win版)
もちろん客先にも導入してもらってる。

>FireBird だけは止めたほうがいいよ。
使えるか使えないかは普通テストして決めるだろ?
使えそうなら使ってみればいい。
Firebird に移行した後でも、使ってく中で、致命的なバグを発見したとかでやっぱ
Firebird はダメだと思ったらそのときにはまた InterBase に切り替えればいい。
互換性が高いんだから、そのまま、もしくは少しの修正で移行できる。

>限定的にしか動かないし、IB に対する拡張部分はバグが多いし。
大分 Fix されてるようだし、バグってる機能使わなきゃいいだろ。

> 他社の(サポートつき)DB を買いなさい。
高いサポート料支払っても問題解決しないから結局は自己責任なんだよ。
0643デフォルトの名無しさんNGNG
>>642
禿同。
つか、ソースがあれば最悪でもどうにかしようがあるから漏れはFBにした。
IBも選択肢に入ってたんだけど、10年ぐらい使い倒しそうなシステムの開発で、
10年後に某がくたばってる可能性を考慮するとオプソ優位の判断になっちゃったんだよね。
0644デフォルトの名無しさんNGNG
>>641
> 限定的にしか動かないし、IB に対する拡張部分はバグが多いし。

具体的に書けなきゃただのアホウだな。
0645デフォルトの名無しさんNGNG
OracleのObjectBrowserみたいな、DB管理ソフトってないですかね?
0646デフォルトの名無しさんNGNG
>>645
IBExpert
www.ibexpert.com
0647デフォルトの名無しさんNGNG
>>641
仮にFireBirdのほうがバグが多いとしても。
http://sourceforge.net/tracker/?atid=109028&group_id=9028&func=browse
こういう形でバグを回避することができるだけでもFireBirdを選ぶ価値があると思うけど。

InterBaseにどんなバグがあるかなんて知る術ないしね。
0648デフォルトの名無しさんNGNG
DelのMLでもFirebirdの質問(この板でやってたのの同じやつだけど)が出てたね
徐々に認知度が上がってるのかな
使う人が増えればそれだけ情報も集まるし信頼性も上がるよね
(バグやその回避策も分かるようになるだろうから)

ここで標語
『Firebird みんなで使えば 怖くない』
0649デフォルトの名無しさんNGNG
質問なんですが
ストアドプロシージャでドメイン使える?
それっぽい構文で
いろいろ試したけど無理だったので・・・

出来たら最高なんだけどなぁ〜
0650デフォルトの名無しさんNGNG
>>649
使えないよ。
ドメイン使ってるテーブルのフィールドと同じ型の渡したり、返したりできないと不便だよね。
ドメイン修正したら関連しているストアドも修正しなきゃならんから。
0651649NGNG
>>650
やっぱり駄目か〜

そのうち独自の拡張で
ストアド・トリガーでドメインOK!!
ドメインを変更した時、
それを使用しているストアドやトリガーをリコンパイル!!

してくれればいいな・・・
0652デフォルトの名無しさんNGNG
>>645>>646
IBExpert日本語化されるらしいよ。
どうやらヘルプも日本語になるみたい。
0653デフォルトの名無しさんNGNG
>>652
まじですかい!!
フリーの奴も?

IBConsole→Marathon→IBQueryと渡り歩いてIBExpertに
落ち着いている身にとっては朗報です。情報さんくす!!
0654デフォルトの名無しさんNGNG
>>653
残念。有料。かなり高い。

>>652 あーこらこら。宣伝は慎むように。
0655デフォルトの名無しさんNGNG
今Marathon使ってるのだが
IBExpertにしかない機能等はあるの?

Marathon、全然アップデートしないから
もし使いやすかったらIBExpertの購入も検討したいのだが・・・
0656デフォルトの名無しさんNGNG
すいません初歩的なことなのかもしれなませんが
InterBaseのSQL命令で
SELECT * FROM (
 SELECT DATE1 FROM DATA_TABLE
 UNION ALL
 SELECT DATA2 FROM DATA_TABLE
);
みたいにFROMのなかでSELECTって書くことできないのでしょうか?
初歩的ですいませんが是非ご教授お願いします
0657デフォルトの名無しさんNGNG
>>656
ビューやストアドを使えばうまく行くけどねー
0658デフォルトの名無しさんNGNG
>>656
そのまんまなら
SELECT DATE1 ADATE FROM DATA_TABLE
UNION ALL
SELECT DATE2 ADATE FROM DATA_TABLE;
でいいんだけどー
0659デフォルトの名無しさんNGNG
ここにいる経験豊富な方よ
教えておくれ

Firebird1.0でドメインのキャラクタセットをnoneから
他のものに変更したいのだけど
MarathonやらIBExpertやらではうまくいませぬ

これって仕様?
0660デフォルトの名無しさんNGNG
>>659
今IBExpertでやってみたけど、
キャラクタセットが選択可能で、一見できそうなんだけど、
コンパイルしたらダメだった…・

よく見たら、ALTER DOMAINではデフォルト値の削除や変更、
チェック制約の削除や変更、ドメイン名、データタイプの変更が
できるようだけど、キャラクタセットの変更はサポートされていないみたい。

ドメインを削除して、再定義するしかないのかもしれないけど、
どっかのテーブルでそのドメインが使用されていたら、削除できないので
かなり厄介(テーブルを削除しなければならない?)。
なんかいい方法はないのかな?

>>654
652は宣伝じゃないだろ。URLも貼ってないし、価格もその他の情報も
一切記述していない。
大方また聞きか、直接問い合わせたんじゃないのか?
0661デフォルトの名無しさんNGNG
ソースはらなきゃ
0662659NGNG
>>660
むぅー
やはり無理でしたか・・・

IBExpert, Marathonで選択可能ということは
FireBird1.5では拡張されて変更出来るのだろうか?
0663デフォルトの名無しさんNGNG
すまそ。
教えてたもぉー

ストアドの中でトリガーの有効、無効を切り替えたいのですが
ALTER TRIGER HOEHOE INACTIVE;
って書き込んでコンパイルすると
「ぼけぇー、うざいんじゃワレ!!そんなの書き込んでも無駄無駄ぁー
ALTERなんて言葉、シラネーヨ!ぺっ!!」
というような警告が出ます

クライアントでストアド呼び出す前後にオンオフ
するしかないのでしょうか?
0664デフォルトの名無しさんNGNG
OLEDBでVBから使ってみてるんだけど、OLEDB経由だとしこたま遅い?
FireBird1.0つかってんだけど。
テーブル取得(SELECT * FROM TABLE)するのにSQLServerで1秒ちょっとで終る処理が、
同構成のテーブルで26秒くらいかかる。。
0665デフォルトの名無しさんNGNG
>>664
FireBird 使わなきゃいいだろ?
0666デフォルトの名無しさんNGNG
>>664
WinXP の場合は遅くなるらしい。(WinMe も?)
データベースファイルの拡張子を GDB 以外にするなどの対策が必要とのこと。
0667デフォルトの名無しさんNGNG
www.microsoft.com/japan/msdn/windows/windowsxp/windowsxpsystemrestore.asp
これに "GDB" 拡張子が含まれているみたい。
0668デフォルトの名無しさんNGNG
教えて下さい

データーベースのCharSetをShiftJIS

ID(Code)などの二バイト文字を使用しない
ドメインのCharSetをASCII

二バイト文字を使用する
ドメインのCharSetをShiftJIS

このような設定でこれから設計していこうと思っています

しかし、CharSetの中にUNICODE_FSSがあり
もしかして全てこれに統一出来るのかな?と思っています

皆さんは今のシステム、CharSetをどのように定義していますか?
0669デフォルトの名無しさんNGNG
>>665
バカ
0670デフォルトの名無しさんNGNG
>>666
フム、情報あんがと。どっかに載ってる情報なのかな。
IBOleDb使ってるんだけどどっかドキュメント読み飛ばしてたかな。。
0671NullPointerExceptionはぬるぽNGNG
>>664
666に関連することだけど、XPとMeの場合、ファイルを復元する機能があるため、
これを無効にしてしまえばよいです。
マイコンピュータ - 右クリックでプロパティ - ファイルの復元タブ
で、ファイルの復元機能のチェックをはずす(手元にXPがないので、逆に復元機能を
有効にするのチェックかもしれない。いずれにせよ、デフォルトの状態では復元が
有効になっているので、デフォルトではないようにすること。スマンコ)と、
復元が無効になってスピードがアップする(かもしれない)。

関係ないが「しこたま」って、やっぱり方言なのかなぁ?
漏れも使ったことあるし、ゲゲッてみたら秋田、山口、熊本などいろんなところでの
方言で、あまり地域性がないみたい。
0672NullPointerExceptionはぬるぽNGNG
「漏れも使ったことあるし、ゲゲッてみたら」
→「…ググッてみたら」

情けない。煎ってきます。
0673デフォルトの名無しさんNGNG
FireBirdを触ってみようという程度の興味から、Twise Lab から日本語化
されたv1.0 を落としてインストールをしたのですが、IBGuardの起動や
IBConsoleでの接続後にログを見ると、

「レジストリ情報が不足しています。
  設定を確認してください。 」
というメッセージが出てきます。これにはどう対処したら良いのでしょうか?

Windows2000(SP3) WI-T6.2.796 FireBird1.0

0674デフォルトの名無しさんNGNG
コンナトコマデシュッチョウシテンジャネエヨ
  ( ・∀・)   | | ガッ
 と    )    | |
   Y /ノ    人
    / )    <  >__Λ∩
  _/し' //. V`Д´)/
 (_フ彡        /  ←>>671-672
0675デフォルトの名無しさんNGNG
ぐぐってみました
Interbase SQL Access97 Lotus123
0676デフォルトの名無しさんNGNG
InterBase(火の鳥)って表を結合すると
オラクルと比べてものすごく時間かかるね。
planとか見てもindexは使ってるようだし
むぅ・・・

パフォーマンスを上げるために
ストアドで処理したりしてるけど
他のみんなはどうしてる?

それともオラクルよりも遅いのは私だけ?
0677デフォルトの名無しさんNGNG
>オラクルと比べてものすごく時間かかるね。
ものすごくってどの程度のこと?

ほかの人にも言えることだけど、そもそもオラクル持ってるのに
何でわざわざ InterBase 使ってるの?
オラクルの方がパフォーマンスがいいならオラクルにしとけばいいじゃん。
0678デフォルトの名無しさんNGNG
>>676
どんな条件下でどんなテーブルをどういうふうに結合したのか何も書かずに
>オラクルと比べてものすごく時間かかるね。
こんな結論出されても

(゚Д゚)ハァ?
としか言えないわけで。

そもそも、ストアド化したところでテーブルの結合自体にかかる速度は
変わるはず無いじゃん。
0679デフォルトの名無しさんNGNG
なんでそんなにキツい言い方をするかな...
Firebirdだとコストがかからないので、十分乗り換え理由になると思うが。

>>676
用途にもよるけど、パフォーマンスをOracleと比べられると厳しいかも。
0680デフォルトの名無しさんNGNG
D7のIBQueryを使っていますが、TIMESTAMP型を含むレコードを
挿入するにはどういうSQLを書けばいいのでしょうか?

以前BDEを使っていた時は TQuery.SQLに 
INSERT INTO hoge VALUES (:FDATE)
をAddして
TQuery.Params.Items[0].AsDateTime := TDateTime型変数
とやれば良かったのですが。
0681デフォルトの名無しさんNGNG
TIBQuery.ParamByName('DateField').AsDateTime := TDateTime;
0682デフォルトの名無しさんNGNG
他のスレですが
http://php.weblogs.com/oracle_mysql_performance
でオラクル等の比較を教えてもらいましたが、
参考になりませんかね?
mySQL というのもありかな?
0683デフォルトの名無しさんNGNG
Delphiでの開発の入門書としてよく薦められる「データベースLinux―InterBase 4.0 for Linux」
ですが、IBXを使用した例が詳しく載ってますでしょうか?
ほとんどの書籍がBDEなので、、、
0684デフォルトの名無しさんNGNG
>>683
続編の「データベースLinux―Java ServletによるWebサーバー構築 編」
に実質9ページ程載ってるだけ

「Firebird オープンソースデータベースの導入と運用の実際」
の方は18ページ載ってるけど
サンプルソースにかなりのページを割いているので
情報量が倍もあるかどうかは読む人によるかと
0685デフォルトの名無しさんNGNG
ここの事例で訴訟手続きデータベースにIB使ってるけど、
ttp://www.borland.co.jp/interbase/cases/interbase_1800serveem_case.pdf

ここまでべた褒めされるのはうれしい事なのだろうけど、その分狙われる可能性
も高くなる?(もちろん穴はふさいでセキュアな環境使用してるだろうけど。)
0686683NGNG
>>684
レスありがとうございます。
そうですか、大受氏の本と同程度ですか。
大受氏のほうは持っているのですが、一つの例が申し訳程度に載っているだけなので。

ヘルプと英文しかないですかね?
0687山崎渉NGNG
(^^)
0688デフォルトの名無しさんNGNG
JSPとSERVLETでWEBアプリケーションを作っているのですが
1件のデータ(更新クエリ30〜40件)を登録すると
メモリを200K〜300K程喰ってしまいすぐに限界がきます。
UPDATEやINSERTを行うと膨大なメモリを喰うのは
InterBaseの仕様でしょうか。それともプログラムが悪いのか・・・
もしこれが仕様ならば解決策はあるのでしょうか?
0689688NGNG
ちなみにInterBase5.6使ってます。
0690デフォルトの名無しさんNGNG
>>688
問題があるとしたら Java 側(JDBC)だろ。
まずは環境やそのコード等を書くべし。
0691山崎渉NGNG
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0692山崎渉NGNG
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0693688NGNG
すいません、レスが遅くなってしまいました。
その後調べてみましたがさっぱりわかりませんでしたので
ソースコード書きたいのですが、結構長くなってしまいますが
検証してもらえますでしょうか・・・お願いします
0694デフォルトの名無しさんNGNG
>>693
>ソースコード書きたいのですが、結構長くなってしまいますが
分割してレスしなよ。
0695688-1NGNG
ありがとうございます
恐らく3〜4レス分になりますがお願いします

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class Test_DB extends HttpServlet{
private static final Stack connStack = new Stack() ;
private static java.sql.Driver driver = null;
private static java.sql.Connection conn = null;
private static java.sql.Statement stmt = null;
private static java.sql.ResultSet rs = null;

public void doGet( HttpServletRequest request, HttpServletResponse response )
throws IOException, ServletException
{
PrintWriter out = getWriter( response );
HttpSession session = request.getSession( true );

String str = "";
String [] strArray = new String[0];
try {
connect();

stmt = conn.createStatement();

for ( int i = 0; i < 500; i++ ) {
stmt.executeUpdate( "INSERT INTO TBL VALUES( '"+ i +"', 〜〜以下80項目分〜〜, '"+ i +"' )" );
}
rs = stmt.executeQuery( "SELECT STR FROM TBL;" );
0696688-2NGNG
Vector vec = new Vector();
while( rs.next() ) {
vec.addElement(rs.getString( "STR" ) );
}
strArray = (String[])vec.toArray( new String[0] );
commit();
close();
} catch ( Exception e ) {
e.printStackTrace();
}

for ( int i = 0; i < str.length; i++ ) {
out.println( strArray[i] );
}
out.close();
}

public void doPost( HttpServletRequest request, HttpServletResponse response )
throws IOException, ServletException
{
doGet( request, response );
}
//----- PrintWriter をHTML表示用にSHIFT-JIS に合わせる-----//
public PrintWriter getWriter( HttpServletResponse response )
throws IOException
{
response.setContentType( "text/html; charset=Shift_JIS" );
return new PrintWriter( new OutputStreamWriter( response.getOutputStream(), "Shift_JIS" ) );
}
0697688-3NGNG
public static void connect()
throws Exception {
try {
synchronized ( connStack ) {
if ( connect_flag != true ) {
// JDBCドライバの読み込み
Class.forName( "interbase.interclient.Driver" );
driver = new interbase.interclient.Driver();

java.util.Properties prop = new java.util.Properties();
prop.put( "user", "SYSDBA" );
prop.put( "password", "masterkey" );
String url = "jdbc:interbase://localhost/data/TEST_DB.GDB";
conn = java.sql.DriverManager.getConnection( url, prop );

// 自動Commit処理をさせない
conn.setAutoCommit( false );
}
}
} catch ( Exception e ) {
throw e;
}
}
0698デフォルトの名無しさんNGNG
// DB更新処理
public static void commit()
throws Exception {
try {
conn.commit();
} catch ( Exception e ) {
throw e;
}
}

// DB巻き戻し処理
public static void rollback()
throws Exception {
try {
conn.rollback();
} catch ( Exception e ) {
throw e;
}
}

// DB接続解除処理
public static void close()
throws Exception {
try {
conn.close();
} catch ( Exception e ) {
throw e;
}
}
}
0699688NGNG
以上上の4つがソースになっていますが
どこを変えればメモリの消費など抑えられるか
等御分かりいただけましたら是非お願いします
0700688NGNG
すいません。
補足ですが688-1でかいた
for分500回回してるところが実際人数分
処理を行うところです
0701デフォルトの名無しさんNGNG
>688-1
>stmt = conn.createStatement();
conn.prepareStatement(sql); 使った方がいいよ。

>688-2
接続close前に、 rs.close() と stmt.close() を入れるべき。

>688-3
>driver = new interbase.interclient.Driver();
これは必要ない。

これで試してみて結果報告してね。
0702デフォルトの名無しさんNGNG
レプリケーターって何するものなの?
0703デフォルトの名無しさんNGNG
vc .netとかで簡単にソリューション内の全ファイル行数を
チェックするにはどうすれば?

マクロか?
0704デフォルトの名無しさんNGNG
>>703
間違えました。すいません
0705デフォルトの名無しさんNGNG
ライセンスについて教えてください。
1:フリーウエアと一緒に配布する場合
2:商用アプリケーションと一緒に配布する場合
3:インターネット上のサーバーで使用する場合
これらのときでも、自由に使えるのでしょうか?
0706688NGNG
>701
レスありがとうございます。

・rs.close() と stmt.close()
・driver = new interbase.interclient.Driver();
の部分は修正しましたが改善されませんでした。
prepareStatement(sql)に関しては、こちらの例が悪かったです。
分かり易くするために簡単なクエリにしましたが、
実際に実行する複数のクエリは、
格納するテーブルも値もバラバラなので
prepare〜はどうも使えそうにありません。
0707デフォルトの名無しさんNGNG
>>705
スレ違い…ここはFirebirdスレじゃない
それと…マルチ反対
0708山崎渉NGNG
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
0709デフォルトの名無しさんNGNG
無料のODBCドライバないでつか?
FirebirdのODBCドライバはバイナリ対応してないものばかりで。
0710山崎渉NGNG
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
0711デフォルトの名無しさんNGNG
Hあげ
0712動画直リンNGNG
http://homepage.mac.com/hitomi18/
0713デフォルトの名無しさんNGNG
InterBaseか、Firebirdのようにオープンソースじゃないのに
それでも使う?
0714デフォルトの名無しさんNGNG
InterBaseのバージョンによる違いを一言で教えてくれ。
5.6 , 6 , 6.5 , 7 について
5.6は現在使用中だ。
0715デフォルトの名無しさんNGNG
一言か・・・DBエンジンが違う。
0716デフォルトの名無しさんNGNG
プレス・リリース

ボーランド?InterBase?7.1 マイクロソフトのサポートを広げる?.NETフレームワーク

ボーランド?マイクロソフトを支援するデータ・ベース・ソルーション?ウインドウズ・サーバー2003

スコッツヴァリー(カリフォルニア)。― 2003年6月17日: ボーランドSoftware株式会社
(ナズダックNM: BORL)は今日ボーランドを紹介しました?InterBase?7.1、マイクロソフト
のサポートを備えた高機能およびクロス・プラットフォームのembeddableなデータ・ベース
ウインドウズ・サーバー2003。この最新のボーランド・データ・ベース提供は、マイクロ
ソフトのための開発をサポートする会社のコミットメントを強調します?.NETフレームワーク、
また設計から配備まで企業にアプリケーション・ライフ?Eサイクル全体の全体にわたる選択
の自由を供給します。


「重要な実行および生産力アップグレードの提供に加えて、InterBase 7.1は
マイクロソフト.NETフレームワーク開発のために開発者に代替データ・ベース
を供給します」とジョン・アーサー(ボーランドのデータ・ベース解決策の管理者)が言いました。
「ボーランドはInterBase技術をサポートすることを約束?オます。また、この最新のバージョンは、
会社の.NETフレームワーク用のアプリケーション・ライフ・サイクル経営戦略を増強します。」
0717デフォルトの名無しさんNGNG
InterBase 7.1データ・ベースは容易な設置およびメンテナンスを可能にします。それは自動的な
衝突回復を提供し、分散アプリケーション内に埋め込むことに上手に適しています。InterBaseは
さらに、多数のユーザとそれを?pォ能で、ビジネス重大なアプリケーションに対する大きな選択
にして、マルチプロセッサー・サポートおよび精巧なアーキテクチャーを提供します。InterBase
はウインドウズ、Rをサポートします:Linux、?またSolaris?ボーランドDelphi?のような開発環境
と同様にプラットフォームも、ボーランドKylix?、マイクロソフト視覚的なスタジオ?また他のもの。

InterBaseコンソール実行モニター支援開発者および管理者への増強は、よりよくデータ・ベース・
サーバー・プロセスを理解します。マネージャーはデータ・ベース使用法および実行へよりよい
視界を持っています?ログイン情報および活動を含んでいること?またデータ・ベース・プロセスの
コントロール。

完全に従順なJDBC2ドライバーを特色として、InterBase 7.1はボーランドJBuilderを使用すること
を開発者にとってより容易にします?また他のJava?高機能適用を作成し展開させるために開発環境
を統合しました。InterBase 7.1はさらに超縫うように進み許可するインテルを支援します?
プロセッサーを通って多数のスレッドを移動させるIV顧客。さらに、InterBase 7.1はInstallAnywhere
を特色とします?、インストール・プロセスを単純化するグラフィックのインターフェース。
0718デフォルトの名無しさんNGNG
オープンソースのInterBase 6.01でテキストデータベース
作っおりまして、各アイテムを

【アイテム情報】
CREATE TABLE items
(
id INTEGER NOT NULL,
title VARCHAR(256) DEFAULT '新規テキスト',
create_date TIMESTAMP DEFAULT NULL,
modify_date TIMESTAMP DEFAULT NULL,
PRIMARY KEY (id)
);

【テキスト本体】
CREATE TABLE item_text
(
id INTEGER NOT NULL,
serial_num INTEGER NOT NULL,
body_text VARCHAR(32765) DEFAULT NULL
);

のようなテーブルで管理しています。
serial_numフィールドは、32K以上のテキストに対応させるため、
テキストを分割したときの通し番号になります。
(続く)
0719718NGNG
(続き)
テキストを取り出すときは、

select body_text
from item_text
where id = :Id
order by serial_num;

なんちゅう具合にしてかき集めます。

このようにitem_textテーブルはインデックスを設定できない
性質のためか、接続後、最初の検索で禿しく時間がかかります
(ヘタすれば1分ぐらい)。

なんとかインデックスを設定できるようにデータの持ち方を工夫
するしか高速化の方法はないんでしょうか。
0720デフォルトの名無しさんNGNG
>>718-719
>性質のためか、接続後、最初の検索で禿しく時間がかかります
>(ヘタすれば1分ぐらい)。
環境がわからんけど、 WinXP 使ってるなら .gdb の問題かも。
テキスト分割って面倒じゃないかい。オレならテキストblob にするだろうね。

ところで IB6 オプソ版使わなきゃならん事情がない限り、Firebird に
するべきだと思うよ。(とりあえず V1.0.3 がお勧め)
IB6 オプソ版はかなりバグがあって、Firebird チームがそれらのバグを
修正してるから Firebird の方が安定してるよ。
(知ってると思うけど Firebird = IB6 オプソ版を継承)
0721718NGNG
>>720
レスさんくす。このスレまだ機能してんのか心配だった。(藁

> 環境がわからんけど、 WinXP 使ってるなら .gdb の問題かも。

すんまそん。WinXPでもWin2000でもやっとります。WinXPの方が多少時間が
かかるような気もします。例のGDB問題かも知れませんが、そんなに気になる
ほどでも。ちなみに、DBファイル本体だけは「.IB」にしてあります。

> テキスト分割って面倒じゃないかい。オレならテキストblob にするだろうね。

面倒です。(藁
でもごく短いテキストとかもあったりするので、BLOBよりは効率いいかなー、
なんて思ったりして…。ま、今のマシンパワーを考えるとそんなもん屁みたいな
もんでしょうが、技術屋の性(さが)ってヤツでしょうか。

> ところで IB6 オプソ版使わなきゃならん事情がない限り、Firebird に
(以下略)

がびーん。バグいっぱいあんの!?公開されているソースはビルドできたもん
じゃないってのは聞いたことあるけど。バグもいっぱいあんの?
IB6オプソ版使っているのには特に理由はないんですがね。趣味のプログラムだし。
ゆくゆくはFBへの移行を検討してはいましたが。FBの方が安定してるってのなら
そろそろ移行するか…。
現行のIBXがいつまで使えるかが心配。FBXとか提供されないかな…。
0722デフォルトの名無しさんNGNG
>>719
> このようにitem_textテーブルはインデックスを設定できない
> 性質のためか、

意味ワカランぽ。idに普通にインデックス設定すればいいじゃん。
つーかネットワークトラフィックの観点からは、VARCHAR(32765)は激しく
無駄の多いテーブル設計だと思われ。

VARCHAR か BLOB にするかはこの辺参照。
ttp://www-1.xdsl.ne.jp/~aj01/rdb/InterBase/ip_ib_strings_j.htm
0723718NGNG
キャラ変えさせて(というか戻させて)もらいます。
丁寧ぶるの疲れた。

>>722
有用な情報サンクス。
インデックスに関してはわかってくれんでよろし。オレの設計が
うんこだってことはわかった。(苦藁

もうBLOBに変更する気満々で、いろいろと調べているんだが、
示してくれたURLの情報にあるような情報がドキュメントに見当たらなくて
四苦八苦している。ページサイズ(=セグメント?)と最大データサイズの
関係とか。

参考にしているのは、BCB6付属のIB6用ドキュメント。BLOBに関しては
わけのわからんことばかり書いてある。要するに、TIBQueryでストリーム
生成して入出力すればそれでいいんか?くそ、わかんねー。
0724デフォルトの名無しさんNGNG
>>723
>参考にしているのは、BCB6付属のIB6用ドキュメント。BLOBに関しては
>わけのわからんことばかり書いてある。要するに、TIBQueryでストリーム
>生成して入出力すればそれでいいんか?くそ、わかんねー。
http://pc2.2ch.net/test/read.cgi/tech/1035278719/701
を参考にしてBCBヘルプで調べてみては。(ちなみにオレのレスじゃない)

>>722
>つーかネットワークトラフィックの観点からは、VARCHAR(32765)は激しく
>無駄の多いテーブル設計だと思われ。
1 文字しか入ってないのに 32765 文字分にパディングして受け取るんかい?
IB/FB ってそんなバカじゃないと思うがどうよ。
0725デフォルトの名無しさんNGNG
>>724
疑うならパケット見れ。
でもIB6.5=<はその辺解決してたような気もする。
0726デフォルトの名無しさんNGNG
問題は、ソースコード盗まれた某も InterBase を改良しつづけている。って点だな。
オープンソースだから無条件で「よい」といえない現実が、FireBird には待っている。

SMP 環境でのスケーラビリティはおいこされちゃったしな。
0727724NGNG
>>725
>疑うならパケット見れ。
早速 IP パケットを見てみたけど、あなたの言う通りでした。疑ってごめん。
0x00 0x00 ・・・ でパディングされてるね。
ちなみに CHAR(***) にした場合は 0x20 0x20 ・・・ でパディングされてた。
IB5.6 と FB1.0.3 とも同じだった。

> でもIB6.5=<はその辺解決してたような気もする。
暇なときにでも確認してもらえるとうれしい。
0728デフォルトの名無しさんNGNG
なんでinterbase 6.5でググれば一発で出てくる話を確認しなきゃいけないんだ…ブツブツ

http://bdn.borland.com/article/0,1410,28107,00.html#Other_Changes
に
Past versions of InterBase have transmitted VARCHAR fields from the server
to the client padded to their full length with spaces. This could cause
performance problems on slow or heavily loaded networks. This behavior
has been changed so that only the actual data in the VARCHAR field is
transmitted.
とある。

和訳しろとかゆーなよ。
0729724NGNG
>>728
thanx!
IB6.5 は改善されてるんだね。FB もなんとかしてもらいたいものだ。
0730デフォルトの名無しさんNGNG
自分で直してもいいんだぞ?
できなきゃ依頼しる。
0731718NGNG
活気付いとるねー。やれー、やれー。
オレもやる。

さらにIB6のドキュメントを読みふけってみた。
どうやらオレは勘違いをしていたらしい。
ページサイズとは、データベースを作成するときに
指定するもの、セグメントとは、BLOB操作のための
バッファかな。
とりあえずデフォルトで問題ないっぽいので、これで
いってみよう。

>>724
せっかく回答例示してくれたんだが、あんなめんどくさいこと
せねばならんのか?CreateBlobStreamでもっと簡単に
できるのでわ?
ちゅうか、TIBSQLなんだが、

IBSQL1.FieldByName('hoge').LoadFromStream(HogeStream);

とかでいけた。

スレッドで処理して、クソでかいデータの取得中も
中止できるようにしたいからね。
0732デフォルトの名無しさんNGNG
PHP + Firebird で、遊んでるのだけど
PHPのInterBase関数って、開発止まってるの??
なんか、昔、開発してた人が消えた。。。とか、見た記憶あるんだけど。
(バグフィックスは、してるっぽいので、誰かが引き継いでるのかな?)
0733デフォルトの名無しさんNGNG
いいかげん、InterBase からはなれる気は無いのかな。
いつまでたっても「フリーの IB」って位置から抜けられないぞ。
0734732NGNG
PHPに、FireBird関数なんてのが、出来ても良いんじゃないかな。
軽率ではあるけど、そっちの方がおもしろそう(^^;

(いずれはそうしないといけなくなってくるのかな・・・)
0735デフォルトの名無しさんNGNG
ISQLで、日本語文字列をUNICODEとして格納したい場合にはどう書きますか?

>insert into TABLE_A (CD,NAME_STR) values(1,'日本語');
例えば、これをUNICODE化したい場合。
0736デフォルトの名無しさんNGNG
保守
0737デフォルトの名無しさんNGNG
IBExpertの日本語化ってまだなのかなぁ。
IBManagerとどちらにするか悩んでるのだけど。
0738デフォルトの名無しさんNGNG
>>737
IBExpert 途中まで日本語化やったけど結局挫折した。
あの編集エディタじゃやりづらい…。
今は IBManager 使ってるよ。DB作成とSQL推敲が楽でいい。
0739山崎 渉NGNG

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0740山崎 渉NGNG

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0741デフォルトの名無しさんNGNG
IBExpertいま使ってるけど
IBManagerとどっちがいい感じ?
0742デフォルトの名無しさんNGNG
俺は PostgreSQL も MySQL も Interbase も
同じように操作できることが必要だったので
現在 IB Manager ユーザー。
機能はちょいIB Manager の方があるみたいだけど
IBExpert と基本的にはかわらんのとちゃうかな?

あ、そういやIBExpertで開けなくてIBManagerでは操作できた
文字コードNONEで日本語バリバリ入ったGDBがあったな。
0743デフォルトの名無しさんNGNG
IBManagerは日本語になったしねぇ
0744デフォルトの名無しさんNGNG
なら、IBManagerは買いかなぁー
購入は
InterBase/FireBird Developer Bundle (1) か
InterBase/FireBird Developer Bundle (2) になると思うけど
ComponentsがIBO製のものとそうでない物とはどう違うのだろうか?


0745デフォルトの名無しさんNGNG
isql, IBConsole で充分。
タダならいいが、金払ってまでも使うもんじゃない。
0746ageNGNG
InterBase5.6でデータが4Gバイトを超えて、「データが読めないよ」
みたいなメッセージが出て接続できなくなったのだが、このデータ
を復旧する方法を教えてくれ。部分的にデータがなくなっても構わないから
0747>>746NGNG
NTFS の PC に持って行ったら?
0748747NGNG
寝ぼけてとるわ。名前欄間違えた(w
0749746NGNG
4Gを超えると、書き込みが一巡し、先頭から書き込まれるような
感じで、データベースを開けなくなります。
無理に2Gバイト程度にちょん切って復旧しようと試みていますが、
うまくいまかない。だれか知っている人いる?
0750デフォルトの名無しさんNGNG
>>749
gbak 使ってもダメ?
あと、ALTER DATABASE で DB ファイルを複数にしちゃうとか。
でも DB に接続できなきゃだめだね。

というか DB のバックアップとってなかったの?
あっ、これって DB の実験をしてるだけだよね?
その後の報告お願いね。
0751746NGNG
あきらめそうです。重要なデータが入っていたのですが、
復旧できるか死かです。
0752デフォルトの名無しさんNGNG
無理だよ。諦めな。
0753_NGNG
http://homepage.mac.com/hiroyuki44/jaz08.html
0754デフォルトの名無しさんNGNG
可愛そうだよ。
復旧方法で知ってるヤシを全部羅列してあげようよ。
0755デフォルトの名無しさんNGNG
>>751
まずは今まで試したことを書きなよ。
何もフィードバックしないヤツにはまともなレスはつかないだろう。

http://www.borland.co.jp/interbase/ib7/feaben.pdf
IB7 は 1 ファイル 4G の制限がなくなったから、それ使えば何とかなるかも?

つーか、日某に問い合わせて何とかしてもらえばいいのでは。
多少金掛かるかもしれないけど、それくらいはしょうがない。
0756デフォルトの名無しさんNGNG
>>749
>4Gを超えると、書き込みが一巡し、先頭から書き込まれるような
>感じで、データベースを開けなくなります。
意味がわからん。
接続できないのになんでそう言えるわけ?
0757デフォルトの名無しさんNGNG
大事なデータなら某に金払って何とかしてもらえ。
0758デフォルトの名無しさんNGNG
大事なデータならバックアップぐらい取って桶

と今更なことを強調してみる。
0759デフォルトの名無しさんNGNG
そういう問題じゃなくて、
運用時に破壊したらどうやって復旧するのか、
ということだと思う。
0760デフォルトの名無しさんNGNG
データベースのサイズ上限は無制限となっているが 4GB 以上のデータベースが作成できない。

InterBase 自身は扱えるデータベースのサイズに特に上限を定めていませんが、OS のファイルシステムによる制約は当然受けます。
WindowsNT4.0 であればこの制限は 4GB - 2Byte となり、これ以上のサイズの GDB ファイルを作成しようとすれば当然その結果としてファイルを読む事が出来なくなり、修復不可能な状態になります。
これは、あくまでも OS の制約であり、この場合はデータベースをマルチファイルデータベースとしておく事で回避できます。
マルチファイルとして作成し、全部で10のファイルに分割して作成すればおよそ40GB までのデータを、この場合なら扱う事が出来るでしょう。
マルチデータベースファイルの作成方法に付いては、InterBase 付属のデータ定義ガイドを熟読してください。
0761デフォルトの名無しさんNGNG
・・・ってこった。
gfixでいろんな引数与えてみて復旧を試みて駄目ならgbakでバックアップからリストア
するしかない。
0762デフォルトの名無しさんNGNG
DATE というフィールドに'20030726'(2003年7月26日)というデータが入っています。
で、selectする時に、「今日の日付から1週間先までのデータ」を取りたいんですがそういうのできますか?
今日だと24日なので、1週間先は31日なので、'20030731'のデータまでOKという事になります。
言語はperlを使っています。
perlで初めに20030731という値を作ってそれを用いてwhereの後に条件を綴るのか、
それとも1週間というのだけ指定すればDBが勝手に持ってきてくれるのかどちらかだと思うんですが。
0763デフォルトの名無しさんNGNG
>WindowsNT4.0 であればこの制限は 4GB - 2Byte となり、

Win2000やWinXPでは、どうしてますか?
0764デフォルトの名無しさんNGNG
>>746
>InterBase5.6でデータが4Gバイトを超えて、「データが読めないよ」
>みたいなメッセージが出て接続できなくなったのだが、このデータ

Firebird でエラーになるまで目一杯書き込んでテストしてみたよ。
やっぱ 4G を超えるところでエラーになったんだけど、
エラー後に、isql 使って接続しようとしたら以下のエラーで接続できんかった。

--- 以下エラー内容 ---
I/O error for file "GDB ファイル名"
Error while trying to access file
パラメータが正しくありません。
--- 以上エラー内容 ---

そこで gstat, gfix でいろいろやってみたけど結果は同じく上記のエラーメッセージが出力される。
これまでの結果から 746 が言ってるようにダメだと思ったんだけど、
ふとGDB ファイル名をリネームしようとしたときにエラーになったわけ。
別に何のアプリもそのファイル使ってないのにおかしいなと思って、
Firebird サーバ見たら接続中だった。そこで再起動しなおしてみた。
そして、念のため再度 isql で接続してみたら、今度はエラーにならなくて
接続できたんだよ。gstat も gfix もエラーにならんかった。ちゃんと DB 内容も読めた。
最初 SQL DIALECT 3 でテストして、gfix で SQL DIALECT 1 に変更してテストもしてみたけど、
結果は同じみたい。

とういう結果から、再起動させてからやってみたらどうだろうか。

ちなみにこちらのテスト環境は以下の通り
・Win98 (FAT32)
・Firebird 1.0.3

結果報告待ってる。
0765デフォルトの名無しさんNGNG
NTFSなら1ファイルで2Tまでいけるのかね。
0766デフォルトの名無しさんNGNG
(Firebird_v1_ReleaseNotes.pdf から抜粋)
--
Engine support for 64-bit file I/O

All Firebird/IB versions prior to FB v1.0 (including IB v6.0) used both 32-bit API/OS calls and 32-bit
(integer) file pointer structures. The engine's capability was thus designed to handle files with a
maximum file size of 4Gb. In the Unix code the file pointer structures were defined as signed
integers, thus limiting Unix and Linux implementations to file sizes of 2Gb.

MS Windows

By design, all versions of Win32 (Win9x/ME/NT/2000) provide full support for 64-bit pointer file
operations, provided the right file pointer structure is passed. To add large file support for Firebird, it
was necessary only to change the file pointer structure to LARGE_INTEGER and to modify the I/O calls
themselves slightly.
--

NTFS なら 4G を超えるファイルに出来るみたい。試して見れ。
0767デフォルトの名無しさんNGNG
InterBase 5.6 は NTFS であろうと 4G は超えられないということらしい。
0768 NGNG
5.6はやばいのね
0769デフォルトの名無しさんNGNG
>>768
その当時は 4G/ファイル 超えるファイルシステムなんて想定していなかったんじゃないか。
ただ複数ファイルにすれば 40G まで OK だからいいんじゃないか。
それがイヤなら IB7 か FB に乗り換えればいいことだ。
0770764NGNG
あれから Win2K(NTFS) でテストしてみたけど >>766 の通り 4G 超のファイル OK だった。
なんでか知らんが Win2K(NTFS) の方が書き込み速度がかなり遅かった。なんでだろう?
ところで >>746 はどうなったんだ?
0771デフォルトの名無しさんNGNG
想定してなかったで済むならそれもまたよし。
0772デフォルトの名無しさんNGNG
4Gのデータがパーになったら洒落で済まないと思うんだけどねぇ。
0773デフォルトの名無しさんNGNG
あらゆる事は洒落で済まされる。
0774デフォルトの名無しさんNGNG
CHARフィールドにUTF8を書き込んだときってNULLが消えたりしますか?
取り出したときに、スペース埋めされちゃってるような。
0775デフォルトの名無しさんNGNG
NULL?
0776774NGNG
勝手にスペースをカットして取り出すので気が付きにくいけど、NULLがカットされてるような。
Param.SetBlob(NULLターミネイト文字, 文字サイズ + 1)
とかすると、やっとNULLが入るみたい。
0777774NGNG
纏めると、IB用のいくつかのフリーのODBCドライバは、
「文字列登録時にスペース埋め、文字列登録時にスペース削除」のようです。
この仕様で問題無いわけなのかな。
0778デフォルトの名無しさんNGNG
ページサイズってメモリあればでかい方が良いの?
0779デフォルトの名無しさんNGNG
本日公開!本物素人援交みゆきちゃん。
寝転んでも形が崩れないおっぱいは若さゆえ!
無料動画をGETしよう。
http://www.cappuchinko.com/
0780デフォルトの名無しさんNGNG
フリーで、IB Manager や IB Expertみたいなツールありますか?
データの入出力からトリガ設定まで出来るような。
0781デフォルトの名無しさんNGNG
IB Expert
0782デフォルトの名無しさんNGNG
>>781
personalは無料なんですね。
日本語化ファイルが見つからないんですが、どこにあるんでしょう。
0783デフォルトの名無しさんNGNG
>>782
ない。
が、その内公開されるそうな。
0784山崎 渉NGNG
(^^)
0785デフォルトの名無しさんNGNG
IBObject使ってる人います?
0786デフォルトの名無しさんNGNG
>>785
います。
0787デフォルトの名無しさんNGNG
IBXやdbExpressよりIBObjectが便利ということですか?
0788デフォルトの名無しさんNGNG
>>787
はい
0789デフォルトの名無しさんNGNG
ネタがないなら無理に嫌味な長文書かなくてもいいと思うのだが。
0790デフォルトの名無しさんNGNG
InterBase 7.1
http://www.borland.co.jp/news/interbace_7_1.html
http://www.borland.co.jp/interbase/
0791山崎 渉NGNG
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
0792デフォルトの名無しさんNGNG
例のfirebird本に載っているサンプルを試しているんですけど、インタラクティブSQLで日本語(漢字)を含んだinsert文がエラーになってしまいます。
なぜですか?

サーバ側OSは2000、クライアントはXP、TCP/IP環境でIBコンソールからの会話処理は正常にできます。
0793デフォルトの名無しさんNGNG
Webみたいなマルチスレッドだと、
1つのTDatabase.StartTransactionだと破綻するところが、
TIBTransactionをスレッド毎にCreateすることで回避できるのでしょうか。

こんな感じですか?
IBTransaction.Create;
IBTransaction.DefaultDatabase = IBDatabase
IBTransaction.StartTransaction
try try
 //処理
 IBTransaction.Commit;
eccept
 IBTransaction.Commit;
end
finally
 IBTransaction.Free;
end
0794デフォルトの名無しさんNGNG
>>793
そんな感じでOK

でもせっかくJavaやPHPのインターフェイスが揃ってるのに、Delphiで
わざわざWebアプリ作るメリットってあるんかなあとは思う。
0795デフォルトの名無しさんNGNG
>794

PHPとかじゃ出力系が弱いから、DBへのアクセスはWebで、レポートの作成はDelphiで、っていう使い道は誤りか?

PHPからpdfに書き出すことも考えられるけど、印刷に特化した成果物となるとやはり力不足でしょ。
0796デフォルトの名無しさんNGNG
>>795
意味がよく分からない…。
誰も印刷制御をDelphiでやっちゃダメだなんて書いてないのに。
0797デフォルトの名無しさんNGNG
>1つのTDatabase.StartTransactionだと破綻するところが、
>TIBTransactionをスレッド毎にCreateすることで回避できるのでしょうか。

>IBTransaction.Create;
>IBTransaction.DefaultDatabase = IBDatabase
>IBTransaction.StartTransaction
>try try
> //Query処理
> IBTransaction.Commit;
>eccept
> IBTransaction.Rollback;
>end
>finally
> IBTransaction.Free;
>end

↑
Query処理とIBTransactionとが1対1に出来ればこれでよいと思いますが、
IBTransactionとIBDatabaseが結びついてるわけで、
Query処理がマルチスレッドで動作したときには、
別スレッドのトランザクションが、勝手にCommit/Rollbackして干渉しちゃいますよね?
0798デフォルトの名無しさんNGNG
>>796 「DelphiでわざわざWebアプリ作るメリット」ってあるから、こういうメリットはあるかなと思ったことを書いただけだ。
ダメとか何とかだれも言ってないと思うが。
0799林田NGNG
ちょっと教えて下さいよ。
ISQLからテーブルにinsert文を投げるとき、valueに日本語が含まれると次のようなエラーがでます。

「arithmetic excetpion, numeric overflow or string truncation...」

要は、文字列のコードが不正だって事のようなのだが、テーブルにはちゃんとSJISだってことを明示しているし、isqlも日本語対応版を使っている。

何がいけないんですか?
0800デフォルトの名無しさんNGNG
>>799
んーと、isqlはIBConsoleについてる奴でしょうか?

おそらくisqlで接続するときにSJISになってないのではないかと思います。
いま手元にないから自信ないけど、isqlの接続パラメータみたいなのに
キャラセット指定するところあったよね。
0801林田NGNG
>800 早速三楠。

isqlは例のfirebird本に付いていた、日本語対応改造済みの奴。
接続を新規作成するときにデータベース名とかユーザ名とかパスワードとか入力するところでS-JISと定義したはずなんだけど。
0802デフォルトの名無しさんNGNG
>>801
SET NAMES SJIS;
やらにゃあかんよ
0803デフォルトの名無しさんNGNG
InterBase7.1のサーバーパックの購入を検討しているのですが
データーベースアプリの購入は初めてなんでライセンスがよくわかりません。
同時接続1ユーザーライセンス(4セッション)とはどういう意味なんですか?
0804デフォルトの名無しさんNGNG
>>803
そういうシビアな問題を2chで聞くのはどうかと思うぞ。
間違ったことを教えてもらってトラぶってもだれも責任とらんし。

で、漏れの解釈では・・・
単純なC/Sアプリなんかではユーザの1接続で1セッションしか
発生しないから同時に接続したいユーザ数分のライセンスを購入
すればOK。アプリが複雑で1ユーザが複数のセッションを必要と
する場合、それが4セッションを超えなければ上記と同じ。超える
場合は追加が必要。たとえば同時3ユーザで一人あたり5セッション
確保する必要がある場合、6ユーザライセンスが必要。

訂正あればだれかよろしく。

実際には合計セッション数がオーバー(ライセンス数×4を超える)
すると接続時にはねられる。同時ユーザ数とかはどうだかしらん。
0805デフォルトの名無しさんNGNG
つまりすぐ接続を切れば何ユーザー増えようがOK?

ってことじゃないな。セールスサポートにTELしてみれ。
0806デフォルトの名無しさんNGNG
>>803
InterBase4.21から伝統的に1ユーザー=4セッションとなっているが
1セッションしか使用しないアプリの場合、1ユーザーライセンスで
4人同時接続まで可能。
0807803NGNG
>804
>806
そうなんですか!今はFirebirdで開発中なんですが、将来的に製品版がほしいのです。
C/Sといっても小規模なんでサーバーパックだけでもいけそうですね。
2ch情報ではありますが、検討材料にさせていただきます。
ありがとうございました。
0808デフォルトの名無しさんNGNG
>>807
Firebirdのままでは駄目なの?
0809sageNGNG
IB6.0SSをカーネル2.4系のLinux上で動かしています。
INET/inet_error: select in packet_receive errno = 9
とうエラーを吐きまくっているのですが、どういったエラーなのかがわからず困っています。
どなたか教えていただけませんか?
0810デフォルトの名無しさんNGNG
1テーブルのフールドの数に制限ありますか?
0811デフォルトの名無しさんNGNG
1テーブルのプードルの数は制限ありますか?
0812デフォルトの名無しさんNGNG
アプリから、データベースファイルに障害が発生して無いかチェックする、
みたいなことは可能ですか?
IBXで出来るとポトペタなんだけどな...
0813デフォルトの名無しさんNGNG
>>812
DOS窓でコマンドラインを渡してやるっちゅうのは、どうだい?
必要があればコードうぷできるけど(ただし、DBチェックじゃなくて
バックアップ/リストアだけど)。
0814デフォルトの名無しさんNGNG
>>813
アプリに内蔵するなのDBで、ユーザにはIBを意識させないようにしたいでつ。
(ファイルとして意識させる程度なら良いですけど)
0815デフォルトの名無しさんNGNG
>>814
CreateProcessでDOS窓を立ち上げて、コマンドラインを渡してみる。
DOS窓はCreateProcessの StartupInfo構造体に適当な値を渡せば
非表示もしくはアイコン化できるので、ユーザーはIBを意識することはない。

漏れIBアプリでこの方法でIBを隠蔽したんだけど、汚ったねえコードで
よければサンプル出してみよっか(Delphiだけど)?
0816814NGNG
ソースおながいします。>>815
0817815NGNG
>>816
長いので、こちらを参照してください。
わかりやすいように「ぬるぽ」と言う名前で発言しています。

ttp://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/index.html
の「質問の解答用ソースを貼るスレ」の4番目くらい。

なお、これはバックアップ用のサンプルなので、データベースの検査に関しては
gbak.exe.ではなくて、gfix.exeを使用して、適切なパラメータを自力で
設定してみてください(これは、やったことがないので説明できない)。
また、SIのパラメータを調整するとDOS窓を非表示にできるのだが、この引数も
忘れちまったスマソ。でも、結果を取得するにはあえてDOS窓を表示したほうが
いいかもしれない(DOS窓に結果が表示されるかもしれない)。

gfixの引数はInterbaseマニュアル「操作ガイド」の第6章 データベースの環境設定と保守
のp125-138付近を、CreateProcessに関してはMSDNあたりを参照してください。
あとは自力で工夫してみて。
0818デフォルトの名無しさんNGNG
>>815
どこかにIBConsole.exeのソースコードがあったような気がしたんだけど、
(FireBirdのHPだったような気がするけど、失念。どこかには確かにあった)
それを探してソース解析すれば一発じゃねえの?
0819818NGNG
あったわ。
ttp://www.twise.co.jp/download_m.html

の「FireBird 1.0(ファイナル)日本語版」のところで
IBConsoleの日本語化ソースコード(Delphi 5)ちゅうのがあった。
漏れも中身見てないけど、IBConsoleはデータベースの検査をやっているので
その部分のコードをパクッ(略)ば、>812の要求は満たせるんじゃないの?
案外>817とほとんど同じかもしれないが。
0820ビギナーNGNG
FireBird-1.5RC6のインストールって、ダウンロードしたファイルを解凍した
だけでOKでしょうか?

一度もFireBirdをインストールした事がないマシンに入れるのに、gogleなん
かで検索しても、今一それらしい情報にヒットしなかったんで。

Marathonを使ってみたくて、FireBirdを入れようと考え、どうせ入れるなら
最新版と思って色々探しても結局判らずじまい。
0821ビギナーNGNG
FireBird-1.5RC6のインストールって、ダウンロードしたファイルを解凍した
だけでOKでしょうか?

一度もFireBirdをインストールした事がないマシンに入れるのに、gogleなん
かで検索しても、今一それらしい情報にヒットしなかったんで。

Marathonを使ってみたくて、FireBirdを入れようと考え、どうせ入れるなら
最新版と思って色々探しても結局判らずじまい。
0822デフォルトの名無しさんNGNG
Firebird スレがあるのになぜここで?

解凍しただけじゃだめ。以下の作業が必要になる。
例えば展開先を C:\Program Files\Firebird にした場合で説明すると、
(以下コマンドプロンプトで作業)
1) カレントディレクトリを C:\Program Files\Firebird\bin にする
2) instreg.exe install "C:\Program Files\Firebird"
3) instsvc.exe install "C:\Program Files\Firebird" -guardian
4) fbclient.dll と gds32.dll を Windows システムディレクトリにコピー

でいいと思ったが。詳しくは doc\InstallNotes.txt を参照
0823デフォルトの名無しさんNGNG
プログラムでシステムテーブルを参照するにはどうすれば良いですか?
テーブルやビューの名前を取り出したいのですが。

Oracleでは
select table_name from all_tables

でテーブル名を参照できるらしいけど。
0824823NGNG
どうも。解決しました。
0825823NGNG
解決してないっつの
0826デフォルトの名無しさんNGNG
どっちやねん
0827デフォルトの名無しさんNGNG
解決しています。ありがとう。

近頃はどの質問スレも荒れてますね。
0828デフォルトの名無しさんNGNG
>>827
蛇足って俺もお願い気味なんすが
解決しただけじゃなくてどうやったら解決できたってのが
欲しいな。
他の御仁にもわからんことあるだろうしさ

ってか本音いうと俺もしっときたいんです・・・ハイ
0829823NGNG
>>824,>>827 は偽者。
解決してないです。
解決していれば方法を書きます。
0830デフォルトの名無しさんNGNG
IBXで、IBTransaction->AddDatabaseして正常に動作する場合と、
ついでにIBDatabase->DefaultTransaction = IBTransactionもしとかないとエラーになる場合があります。

基本は、両方設定でつか?
0831デフォルトの名無しさんNGNG
テーブル&ビュー一覧取得SQL
select RDB$RELATION_NAME from RDB$RELATIONS
0832デフォルトの名無しさんNGNG
>>830
いつも両方設定してる。
0833830NGNG
thanx>>832
IBXはTQueryより設定多くてソース直すの怖かったんですけど、そうします。
0834823NGNG
どうも。解決しました。

答えは「できません」だそうです。
どうも。
0835831NGNG
>>834
いいかげんしつこいんじゃないの?
0836823NGNG
>>831
ありがとうございました。

>>834は偽者です。
0837デフォルトの名無しさんNGNG
deadlock update conflicts with concurrent update

デッドロックみたいですが、これってどういう意味で塚?
どう対処しろということなのかなあ。
0838デフォルトの名無しさんNGNG
同じキーを持つレコードを更新しようとしたんでわ?
試行回数を決めて一方が更新をキャンセルするようにするとか、
レコードロックのレベルを上げて誰かが更新中は触れなくするとか。
0839デフォルトの名無しさんNGNG
なんでこのSQLエラーなんですか?
SELECT A.*, B_1.NAME FROM A LEFT OUTER JOIN B AS B_1 ON A.KEYCD = B_1.KEYCD
Table名にASって使えないのね・・・
0840デフォルトの名無しさんNGNG
>>839
単にASがいらないだけでは?
0841デフォルトの名無しさんNGNG
Interbase7.1でIBRepication Server使っている人いますか?
「指定したファイルが見つかりません」などと訳の解らないエラーメッセージが表示されて
レプリケーションサーバが立ち上がってくれません。
ライセンスキーは入っています。
使えている人がいるなら私の使い方がまずいのかもしれませんのでお訊ねしている次第です。
でも、私の使い方が間違っているとは到底思えないのでござます。
どうしたらよいのやら。とほほ。
0842デフォルトの名無しさんNGNG
FirebirdのUDFの関数名エイリアスなんですが、一度RDB$FUNCTIONSから
削除すると二度とそのエイリアス名が使えないようなんですが、使えるように
する方法、またはエイリアス名の登録記録を参照、削除する方法をご存知の方、
お教えください。
0843デフォルトの名無しさんNGNG

そういや、もうInterBaseの5.6のライセンス購入が終わったんだよね
・・・・という事で上げ
0844デフォルトの名無しさんNGNG
>>842
そのテーブルだけじゃなく別のテーブルにも情報が残ってる可能性
があるからDROP EXTERNAL FUNCTIONで消したほうが安全じゃないかな。
0845デフォルトの名無しさんNGNG
>>842
RDB$を直接弄るのはやめた方がいいよ。漏れもはまったことがある。
極めたのならいいけど、通常はGenerator以外は基本的に弄る必要はないはず。

DROPつかえ。
0846デフォルトの名無しさんNGNG
あのバカみたいな質問なんですが
srever_nameってどういうもん入力すればいいんですか?
ipアドレスですか?
0847デフォルトの名無しさんNGNG
海外掲示板用オフラインリーダーを作るスレ
http://pc2.2ch.net/test/read.cgi/tech/1072883528/

海外でよく使われていうる掲示板スクリプト
専用のオフラインリーダー作って下さい。

必要な条件はID、PASSを管理できること、
OpenJaneみたいな三面型の見た目。
簡単にローカライズできるように言語ファイルを採用
0848デフォルトの名無しさんNGNG
すいません、今IBをServletから呼び出して
簡単な掲示板を作っていたのですが

interbase.interclient.CommunicationException: [interclient] Communication
error: An IO exception occurred while trying to send data to server
192.168.1.1.
The message of the IOException is "Broken pipe".
See API reference for exception
interbase.interclient.CommunicationException

というようなエラーが1日に1回くらいでてWEBサーバーからDBサーバーに
接続できなくなってしまうのですが
このような現象はどんな時にでるのでしょうか・・・
また回避方法ってのはどうすればいいのでしょうか
0849848NGNG
すんません、環境かきわすれましたが
Tomcat3.2.3
JDK1.3.1
Redhat6.2 です
0850デフォルトの名無しさんNGNG
まずサーバーのログを調べるのが先じゃないか?
0851デフォルトの名無しさんNGNG
InterBase Adminコンポーネントの、
IBBackupServiceとIBRestoreServiceを行うと、
壊れてない綺麗なデータベースが出来ますか?

試してみようにも、壊れたデータベースファイルがまだ無いので...
0852デフォルトの名無しさんNGNG
database is not found みたいなエラーが出るんですが、何が原因でしょう。
0853デフォルトの名無しさんNGNG
>>852
おまえ
0854デフォルトの名無しさんNGNG
>>852
たぶん、データベースが見つからないんだと思います(w
0855http://chbox.com/NGNG
InterBaseを使いこなすスレ (プログラム技術@2ch掲示板)のまとめ

http://pwiki.chbox.com/pukiwiki.php?interbase
0856デフォルトの名無しさんNGNG
>>797
>別スレッドのトランザクションが、勝手にCommit/Rollbackして干渉しちゃいますよね?

気になってるんで教えて欲しいんですけど、上のようなことってあるんですか?
あるとすると、スレッド内からInterBaseにアクセスってどうやるんでしょう?
BDE使ってSession張る?

DB使うようなプログラム書くの慣れてないんで、的外れな質問だったらすみません。
0857補完NGNG
>>856
こっち(Firebirdスレ)のこの辺参考にしてみてください。

http://pc2.2ch.net/test/read.cgi/tech/1058992146/136-

参考にならんかったらすんまそん。
0858補完NGNG
>>857
情報ありがとうございました!
おかげで見えてきました。
0859デフォルトの名無しさんNGNG
ストアドのデバッグってどうやるの?
0860デフォルトの名無しさんNGNG
IBExpertにデバッグ機能があるが使いかたがわからんので漏れは
デバッグ用のテーブルつくってそこにデバッグ情報出力してる。
0861デフォルトの名無しさんNGNG
860>
thnx
全然分からないけど参考にさせて貰います。
0862デフォルトの名無しさんNGNG
0863860NGNG
>>861
激しく遅レスだが、ログ吐き出し用テーブルを作ってそこに値を
インサートするってことです。

CREATE TABLE DEBUG_LOG(
CODE INTEGER,DEBUG_STR VARCHAR(256))

みたいなのつくっといて、ストアドでところどころ

INSERT INTO DEBUG_LOG(DEBUG_STR) VALUES(:LOCAL_VAR);

みたいな。
0864デフォルトの名無しさんNGNG
少し前から、IB6を使い始めた者なんですが、
>483のやり方って、具体的にはどうやればいいのでしょうか?
0865デフォルトの名無しさんNGNG
>>864
Excelのマクロでワークシートから
INSRET INTO (FIELD1,FIELD2,FIELD3) VALUES(1,'AAA','abc');
INSRET INTO (FIELD1,FIELD2,FIELD3) VALUES(2,'BBB','def');
INSRET INTO (FIELD1,FIELD2,FIELD3) VALUES(3,'CCC','ghi');
みたいなテキストファイルを書き出してISQLで実行。

もちろんワークシートをコピーして秀丸か何かでやっても良い。

ちょっと考えればわかるよね。
0866デフォルトの名無しさん05/02/19 05:27:35
IBって無料なの?
0867デフォルトの名無しさん05/02/19 23:38:25
InterBase6 OpenSource:
・無料 ・海外でのみ公開され、付属IBConsoleは英語のもの

InterBase6 有償版:
日本のBorlandから発売され、IBConsoleの日本語版がついている。
日本語版のマニュアルがあるので、マニュアルだけでもあると便利
でも、もう売っていないかも。

InterBase6.5系:
海外でのみ発売されたInterBaseのバージョン。詳しくはしらない。

InterBase7系:
InterBaseシリーズの最新版。
有料のものしかない。

-------------------------------------------------
Firebird1系:
InterBaseの無料版が6のみだったので、公開されたIB6のソースコードを
元に、オープンソースデータベースとして派生したもの。
InterBase6と100%互換らしいのと、InterBase6 OpenSourceにあったバグ
が少し修正されているようなので、InterBase6 OpenSourceを使うよりは
こっちのほうがお勧め。

Firebird1.5系:
コードをC++ベース?に書換え、機能強化したもの。
無料のもので使いたいのならこれが一番良いかも。
InterBase用の接続ドライバなどで繋いでもだいたい大丈夫。


なにか間違っていたらすまそ。
0868デフォルトの名無しさん05/02/19 23:44:31
基本的に6からわかれて別物とおもっていい
7の新機能群は便利にみえる
安いしねぇ
0869デフォルトの名無しさん05/02/20 04:16:11
FBは1系を業務で使ったことあるけど、ロクなSQL書けなくて散々な目にあった記憶が。
インラインビューが使えないのはイタすぎです…
7系はどう?少しはマシになってるの?
0870デフォルトの名無しさん05/02/20 12:18:09
俺は5だったかから入ったけど、SQLの制限は多いよ
ただ、多機能なDBというよりはとにかくコンパクトで早い、扱いやすいDB
という位置づけだから納得して使った

いまどきメモリ32Mとかで満足な速度で動くDBも珍しいと思う
組み込み向けには最適だね

7はJDBC方面がいいね
0871デフォルトの名無しさん05/03/04 14:47:35
gdbファイルの更新日付が変わらないことってありましたか?
今、その現象が出て困ってます。
アプリは正常に動作していてCOMMITもかかってるはずなのに・・・
0872デフォルトの名無しさん05/03/04 18:13:37
拡張子がgdbだとシステムファイル扱いされるWindows問題ならありましたが。
0873デフォルトの名無しさん05/03/05 03:07:54
>>871
すべてのクライアントが切断しないと変わらないんじゃなかったっけ・・?
0874デフォルトの名無しさん05/03/07 15:25:37
>>871

>>873 さんの行っている事が正解だと思う。
gdbファイルのタイムスタンプはリアルタイムでは変わらない。
当方、IB5 for win で確認。
0875naka2005/03/23(水) 23:32:09
firebird 2.0 alpha-1 がリリースされました。
http://firebird.sourceforge.net/
0876デフォルトの名無しさん2005/04/15(金) 12:00:02
InterBase 7.5の新機能
http://onigiri.s3.xrea.com:8080/delphi/index.php?InterBase%2F7.5

Multi-Instance
Global temporary tables
CASE, COALESCE, and NULLIF
0877age2005/04/29(金) 09:28:21
7.5の日本語版って出ないの?
0878デフォルトの名無しさん2005/04/29(金) 11:52:10
そのうち出るんじゃない。
0879デフォルトの名無しさん2005/04/29(金) 12:27:55
InterbaseもFirebirdと同じように大規模な書き換えが行われているのかなあ。
0880デフォルトの名無しさん2005/06/15(水) 10:22:05
7.5.1アップデート(英語版)地味ーにリリース
http://www.borland.com/downloads/registered/download_interbase.html
0881デフォルトの名無しさん2005/06/15(水) 10:24:48
SET TRANSACTION NO SAVEPOINTとパフォーマンス・モニタの改良修正
0882デフォルトの名無しさん2005/08/16(火) 15:51:15
Interbase7を使っています。シャドウファイルについてお尋ねいたします。

シャドウファイルをネットワークドライブに割り付けたいのですが出来ないことは承知しております。
どうしても出来なのでしょうか?

ローカルドライブにシャドウファイル作成出来ても、そのマシン自体が死んでしまったらシャドウファイルもくそもないので
シャドウファイルは別コンピュータに作りたいのです。
0883デフォルトの名無しさん2005/08/16(火) 20:00:43
シャドウは非同期だぞ。
バッチ処理でコピーでいいじゃん。
0884デフォルトの名無しさん2005/08/16(火) 21:11:08
>>882
物理的に別なディスクをつないでそこにシャドウを作ればほとんどの場合大丈夫じゃない?
落雷や地震とかで全ディスクやられたりしたらダメだけど、その場合は定期的なバックアップで対応。

Linux系でNFS?ならできるかもしれないけど、ネットワーク越しだと信頼性がかなり落ちてしまうんじゃないかなぁ


>>883
前にもどこかで非同期だって見たような気もするけど、本当にそうなの?
非同期なシャドウって作る意味あるのだろうか・・・。
0885デフォルトの名無しさん2005/11/06(日) 19:13:20
みなさん質問があります。ご助力お願いいたしまする候。

現在InterBase6 OpenEditionとDelphi5で開発してますが
ANSI SQLに準拠しなさ過ぎていて、
たとえば、CASE文が無いためNULLを空文字や0に変換できないとか
また、情報が少なくユーザ定義関数を作るにも作り方が分からないとか
その他もろもろ等々。
こんなつまらない事・簡単なことで結構こまっていたりします。

そこでFireBird1.5がInterBase互換でANSI SQLに準拠してると聞いて
FireBird1.5に乗り換えようか検討しています。

単純にInterBase6をアンインストールして
FireBird1.5をインストールするだけで、
現在開発中のものが、そのまま動作するものなのでしょうか?

どうか平に平にご助力お願いいたしまする候。
0886デフォルトの名無しさん2005/11/10(木) 08:22:51
>>885
使用中のDBをバックアップして(gbkファイルにして)
IB6をアンインストールして、
もしC:\Windows\System32の中にgds32.dllが残ってたら手動で削除。
そしてFirebird1.5をインストール
バックアップしておいたファイルからリストアすればOK。

互換性はほぼあるけど、微妙な違いはあるから作成したプログラムを
一通り動かすといいよ。
0887デフォルトの名無しさん2005/11/10(木) 16:11:42
>>886
ご助力誠に有難き候。

なるほどそうでしたか
もぅInterBase6の非力さに堪忍袋の緒がはちきれんとばかり
でしたので本当に助かりました。

ところで、ユーザ定義関数の作り方はお解かりになられますか?
もしくは、詳しく解説されているページをご存じないでしょうか?

どうか平に平にご助力お願いいたしまする候。
08888862005/11/11(金) 07:22:08
>>887
オープンソースなんだから非力かどうかは貴方しだい
嫌なら使わなきゃいいだけ。

ttp://www.moriq.com/firebird/links.html
ttp://www.borland.co.jp/interbase/tech/ib_udf/index.html
0889デフォルトの名無しさん2005/11/15(火) 11:53:39
>>888
良いサイト教えていただきましてありがとうございます!
金輪際InterBase6は使わない方向で検討しております。
どうもありがとうございました!
0890デフォルトの名無しさん2005/11/16(水) 20:34:30
俺はIBやFBはSQL方言が少なくていいRDBMSだと思っているけど。
ORACLEやSQL Serverなどの重量級に比べ扱いやすくて入門用には最適だと思う。管理の手間も少ないし。
0891デフォルトの名無しさん2005/11/17(木) 01:22:33
>>890
同意。
もっと入門書があれば人気でるんだろうけどね
0892デフォルトの名無しさん2005/11/17(木) 11:35:55
>>885
下調べもせず開発してるの?
0893デフォルトの名無しさん2005/11/17(木) 14:14:31
2005年の現在においてFBもありますし
リソース(資源)気にするほどマシンパワーが
ないわけでもないから、IB6使う利点は少ないかと。
0894デフォルトの名無しさん2006/02/22(水) 16:42:12
interbase4.xをwindows2003serverで動かしたことある人居ませんか?
頼まれてNTで動いていたシステムをマシン入れ替えで2003serverにしたらクライアントアプリが非常に遅くなりました。
入力画面表示するのに3分くらいかかります。
クライアントはXp Home、アプリはDelphi3+BDE5.2です。
サーバーのハイパースレッディングはオフにしてあります。
0895デフォルトの名無しさん2006/02/26(日) 02:19:48
IB4じゃあServer2003どころかXPでも駄目だろ。
IB7.x(とD5以上)にしないと。
あとはVMwareでNT on Server2003/XPっていう考え方もあるが。
0896デフォルトの名無しさん2006/03/03(金) 20:55:31
>>894
ハイパースレッドのプロセッサ上で稼動させると遅くなるらしいです。
BIOSでOFFにすれば直るらしい。
0897デフォルトの名無しさん2006/03/04(土) 00:19:27
オフにしてるって書いてるじゃん・・。

IBやめてFB1.5にするとか・・・
895の言っているようにVMWareも良さそうだな
08988952006/03/04(土) 21:05:53
あとはまぁFirebirdに乗り換える(金がかからないからね)という考え方も。
それとBDE経由だとD3のままでもよかったかも。
08998942006/03/08(水) 15:22:30
サーバーをFireBirdに変更したところ動くようになりました。
今のところ不具合は出てないようです。
ありがとうございました。
0900デフォルトの名無しさん2006/05/04(木) 23:24:07
+
レス数が900を超えています。1000を超えると表示できなくなるよ。