フォーラム


ゲスト  

ようこそ ゲスト さん。このフォーラムに投稿するには 登録が必要です。

ページ: 1 [2] 3 4 5
トピック: [Software] IBConsole 日本語版+α
DEKO
管理者
投稿数: 2383
小話3
on: 2015/09/24 02:34 Thu

次の更新では Firebird 用の Extras を一つ作って (追加して) みようかと思っています。
Unicode rel.45 / ANSI rel.81 でできちゃったのでナシという事に…(^^;A

DEKO
管理者
投稿数: 2383
IBConsole 日本語版+α Unicode 版 rel.44 リリース
on: 2015/09/24 04:17 Thu

[変更点]

  • (U) ISQL でパラメータ付きクエリを実行できなかったバグを修正。

IBX の TIBQuery は XE4 以降のどこかの時点でパラメータ (Params) の取得にも DB 接続が必要となったようです。以前は TIBQuery だけを Create して SQL 文を流し込めばパラメータを (事前) 取得できたのですが…。

var
Query: TIBQuery;
begin
Query := TIBQuery.Create(nil);
try
Query.SQL.Text := 'SELECT * FROM MST_EMPLOYEE WHERE CODE = :CODE';
ShowMessage(IntToStr(Query.Params.Count)); // ここでエラーになる。少なくとも XE3 までは通る。
finally
Query.Free;
end;
end;

 
これが XE8 では通りません。いつから通らなくなったのでしょう?

DEKO
管理者
投稿数: 2383
IBConsole 日本語版+α Unicode 版 rel.45 / ANSI 版 rel.81 リリース
on: 2015/09/27 14:53 Sun

[変更点]

  • (U/A 共通) Firebird でも [データベースのプロパティ] – [一般] タブにある "オプション" を変更できるようにした。

[補足]
[データベースのプロパティ] – [一般] タブ *1 にあるオプションは gfix の以下のパラメータに相当します。

  • 強制書き込み: [有効] が gfix -write sync、[無効] が gfix -write async に相当。
  • スイープ間隔: gfix -housekeeping <n> に相当。
  • データベースダイアレクト: gfix -sql_dialect <1 | 3> に相当。
  • 読み取り専用: [はい] が gfix -mode read_only、[いいえ] が gfix -mode read_write に相当。
  • ページバッファ: gfix -buffers <n> に相当。

例えば CD / DVD で Firebird Embedded Server を使う場合にはデータベースを [読み取り専用] にする必要があるのですが、これが IBConsole でできると簡単でいいですね (gfix でイチイチやるのはメンドイ *2 ので)。

※1 [データベースのプロパティ] – [一般] タブはデータベースがアクティブの時だけ表示されます。
※2 DB プロパティの変更は、データベースがアクティブの時 (誰かが接続している時) にはできません。

DEKO
管理者
投稿数: 2383
IBConsole 日本語版+α Unicode 版 rel.46 / ANSI 版 rel.82 リリース
on: 2015/09/28 10:30 Mon

[変更点]

  • (U/A 共通) ANSI / UNICODE 32bit / UNICODE 64bit Edition を別々に起動できるようにした。

64bit Windows の環境ですと、

  • ANSI (32bit) 版
  • Unicode (32bit) 版
  • Unicode (64bit) 版

の三つを同時に起動可能です。同時起動防止自体は効いているので、例えば Unicode (32bit) 版を同時に二つ起動する事はできません。また、レジストリは共通となりますので、それぞれで異なる設定にする事はできません。

DEKO
管理者
投稿数: 2383
IBConsole 日本語版+α Unicode 版 rel.47 / ANSI 版 rel.83 リリース
on: 2015/09/30 22:47 Wed

[変更点]

  • (U/A 共通) InterBase To-Go Edition でも動作するようにした。
  • (U/A 共通) IBLite でも動作するようにした。
  • (U/A 共通) Firebird Embedded Server でも動作するようにした。


 
[ヘルプ | ローカルサーバの設定] で ”Embedded Server” を設定しておけば、InterBase To-Go Edition, IBLite, Firebird Embedded Server をローカルサーバとして利用する事ができるようになりました。

DEKO
管理者
投稿数: 2383
IBConsole 日本語版+α Unicode 版 rel.48 / ANSI 版 rel.84 リリース
on: 2015/10/03 02:20 Sat

[変更点]

  • (U/A 共通) IBConsole.exe と同じ場所に IBConsole.conf があればそちらを読みにいくようにした。
  • (U/A 共通) Home Path に IBConsole.conf があればそちらを読みにいくようにした (Windows 2000 以降)。

設定読み込みの優先順位は以下の通りです。
1.IBConsole.exe と同じ場所にある IBConsole.conf
2.Home Path (C:\Users\<アカウント名>\AppData\Roaming\IBConsole) にある IBConsole.conf
3.レジストリ ([HKEY_CURRENT_USER\SOFTWARE\Borland\InterBase\IBConsole])

DEKO
管理者
投稿数: 2383
IBConsole Portable (32bit)
on: 2015/10/03 12:53 Sat

サンプルとして IBConsole Portable (Unicode 32bit) を作ってみました。

ANSI 版の IBConsole Portable を作りたい時には bin\IBConsole.exe を ANSI 版と差し替えてください。
64bit 版は…難しくないので自分で作りましょう (^^;A

Download: http://ht-deko.com/software/IBConsole_Portable_32bit.zip

# IBConsole_Portable.exe は単なるランチャーで、bin\IBConsole.exe を起動しているだけです。
# 何でこんな事をしているかと言うと Firebird Embedded Server を組み込むとファイルがとっ散らかるからです。

サンプルなので、アーカイブを更新する予定はありません。
Firebird Embedded Server の新しいのが出たり IBConsole が更新されたらご自身でファイルの差し替えを行ってください。

DEKO
管理者
投稿数: 2383
小話4
on: 2015/10/04 08:48 Sun

XE8 ではフィールド (TField) の読み書き速度の向上が行われていますが、XE8 でコンパイルした IBConsole の処理速度も向上しているのでしょうか?

短く言えば向上しています

比較用に XE3 で (最後に) コンパイルされた IBConsole (Unicode 32bit) のダウンロードリンクを貼っておきます。
Download: http://ht-deko.com/software/ibc_unicode_rel40_win32_ja.zip

[インタラクティブ SQL] でクエリを実行した後に、下部にある [統計] タブで実行時間を調べてみてください。
但し処理速度が向上するのは DB コンポーネント (TDataSet) でフィールド操作をした時だけです。XE8 でコンパイルしたからといって遅いクエリが速くなる訳ではない事に注意してください。

DEKO
管理者
投稿数: 2383
IBConsole 日本語版+α Unicode 版 rel.49 / ANSI 版 rel.85 リリース
on: 2015/10/11 08:18 Sun

[変更点]

  • (U/A 共通) データベースが異なる場合には [オブジェクトウィンドウ] を複数開けるようにした。
  • (U/A 共通) [オブジェクトウィンドウ] のキャプションの書式を変更した。
  • (U/A 共通) [インタラクティブ SQL] のキャプションの書式を変更した。
  • (U/A 共通) [アクティブウィンドウ] のサイズを変更。リサイズも可能にした。
  • (U/A 共通) *.hlp の同梱をやめた。
  • (U/A 共通) WinHelp 関連の処理をすべて削除。

修正点は実質二点です。

DB 毎に [オブジェクトウィンドウ] を開けるようにしました。A と B という DB があっても [オブジェクトウィンドウ] は常に一つしか開けなかったのですが、A と B 別々の [オブジェクトウィンドウ] が開けるようになりました。

ですがこのままだと "どの DB の [オブジェクトウィンドウ] なのか?" が判りにくく、誤操作しそうなので

[<DB名>@<サーバ名>] <オブジェクト名> のプロパティ

 
という表記にしました。[インタラクティブ SQL] もこの表記に倣うように変更しました。

すると今度は [ウィンドウ] で表示されるウィンドウ一覧 ([アクティブウィンドウ]) に表示される文字列が長くなって収まりきれないので幅を広くし、さらにウィンドウをリサイズ可能にしました。

*.hlp は内容が古いのと、Vista 以降の Windows では素直に開けないので同梱しない事にしました。そうすると WinHelp 関係の処理は不要になるのでゴッソリ削りました。[インタラクティブ SQL] の [ヘルプ | SQL リファレンス] は Interbase XE7 の "言語リファレンスガイド (PDF)" にリンクしてあります。

…芋づる式に修正が必要になったという事です (w

DEKO
管理者
投稿数: 2383
小話5
on: 2015/10/13 22:15 Tue

ANSI 版と Unicode 版はどっちが高速なのかと言えば試してみれば判りますが、Unicode 版の方が速いです。
最近のバージョンは同時に起動できますので疑り深い方は実際に試してみるといいでしょう。

但し、Delphi / C++Builder 2007 以前の ANSI 版 Delphi と一緒に使っているのであれば ANSI 版を使った方がいいでしょう。これは Delphi で作ったアプリと IBConsole で挙動が (できるだけ) 同じにできるからです。IBX を使う限り、Delphi / C++Builder 製 アプリ (ANSI) で起こる事は IBConsole (ANSI) でも起こりますし、その逆もまたしかりです。

Delphi / C++Builder 2009 以降を使っているのであれば…もちろん Unicode 版をオススメします。

IBConsole はそこまで大きなアプリケーションではないので、ANSI / Uincode 版をどちらもインストールして使い分けるのがオススメです。IBX を使っていなかったり、Delphi / C++Builder 以外の開発環境を使っている場合でどれか一つしかインストールしたくないという事であれば無難なのは IBConsole Unicode 32bit 版です。

※ 続きは↓の [3] をクリック。

ページ: 1 [2] 3 4 5

WP Forum Server by ForumPress | LucidCrew
バージョン: 1.7.5 ; ページロード: 0.066 sec.