Blackfish SQL 開発者ガイド - 日本語版

By: Masahiro Arai

Abstract: Blackfish SQL 開発者ガイド -日本語版

    Blackfish™ SQL 開発者ガイドの概要

このドキュメントでは,Blackfish SQL および Blackfish SQL API for Windows の概要について説明します。このドキュメントのアップデートについては,CodeGear Developer Network の「Blackfish SQL 開発者ガイド-日本語版」を参照してください。

Blackfish SQL 開発者ガイド』には,Blackfish SQL アプリケーションの作成方法が説明されています。このガイドは,「CodeGear CodeCentral (http://cc.codegear.com/item/25076)」からダウンロードできます。

    目次

    Blackfish SQL

Blackfish SQL は,高パフォーマンスで占有領域の少ないトランザクション対応のデータベースです。Blackfish SQL は,当初 JDataStore という名前で 100% Pure Java のデータベースとして実装されていましたが,これは Blackfish SQL for Java という名前に変更され,Java から C# に移植された Blackfish の C# 実装は,Blackfish SQL for Windows という名前になり,RAD Studio 2007 でのアプリケーション開発に使用することができます。

Blackfish SQL は,データベースのパフォーマンス,スケーラビリティ,使いやすさ,および業界標準に準拠することに重点が置かれています。Blackfish SQL は次の機能を備えています。

  • 業界標準に準拠
    • エントリレベル SQL-92
    • 文字データの Unicode での保存
    • ソートとインデックスにおける Unicode ベースのコレーションキーのサポート
    • dbExpress 4 ドライバ(Win32 Delphi および C++)
    • ADO.NET 2.0 Provider for .NET
    • JDBC for Java
    • JavaBeans データアクセスコンポーネント(Java)
    • XA/JTA 分散トランザクション(Java)
  • オンライントランザクション処理(OLTP)アプリケーションや決定支援システム(DSS)アプリケーションに必要な高パフォーマンスとスケーラビリティ
  • Delphi,C#,および VB.NET ストアドプロシージャとトリガー(Windows)
  • Java ストアドプロシージャとトリガー
  • 管理作業が不要な単一アセンブリまたは単一 JAR 配布
  • データベースの増分バックアップおよびフェイルオーバー

    Blackfish SQL DataStore

Blackfish SQL は,製品,各種ツール,およびファイル形式の名前です。RAD Studio 2007 には,DataStore クラスを含むアセンブリが用意されています。

    Windows と Java の互換性

Blackfish SQL for Windows と Blackfish SQL for Java は互換性がありますが,いくつかの制限が適用されます。データベースファイル形式は,両者にバイナリ互換性があります。また,Windows クライアントが Java サーバーに接続したり,Java クライアントが Windows サーバーに接続ができるように,データベースクライアントとデータベースサーバーの異種実装接続が可能です。ただし,Blackfish SQL for Windows 実装はまだ新しいため,Blackfish SQL for Java のいくつかの機能は Windows バージョンでサポートされていません。

Blackfish SQL 開発者ガイド』には,Blackfish SQL アプリケーションの作成方法が説明されています。このガイドは,「CodeGear CodeCentral」からダウンロードできます。

    Blackfish SQL API for Windows

Blackfish SQL API は,Delphi および C++ プログラムで DBXClient DBX4 ドライバとともに使用されます。.NET アプリケーションでは,この API を ADO.NET プロバイダとともに使用できます。RAD Studio では,Borland.Data.DataStore および Borland.Data.MetaData 名前空間にこの API が存在します。

次にリストする管理機能は,Blackfish SQL for Windows の DataExplorer ではまだサポートされていません。これらの作業を実行するには,SQL コマンドまたは Blackfish SQL に組み込まれている DB_ADMIN ストアドプロシージャを使用してください。詳細については,「CodeGear CodeCentral」の『Blackfish SQL 開発者ガイド』を参照してください。

  • 列の自動増分プロパティと最大インラインプロパティの作成/変更
  • 二次インデックスの作成
  • ユーザーおよびロールの作成,変更,削除
  • データベースミラーの作成,変更,削除
  • データベースの暗号化
  • データベースのバックアップ

    SQL から使用できる管理およびユーティリティ機能

DB_ADMIN クラスと DB_UTIL クラスがあります。これらのメソッドは,CALL 文を使用して SQL から呼び出すことができます。Blackfish SQL ダイアレクトは,DB_ADMIN のメソッドを組み込みメソッドとして認識するため,METHOD エリアスを作成しなくてもこれらのメソッドを呼び出すことができます。

    DB_ADMIN クラス

DB_ADMIN は,さまざまなデータベース管理作業を実行するためのストアドプロシージャを集めたクラスです。次の機能が含まれます。

  • 自動フェイルオーバーと増分バックアップの設定
  • データベース設定の表示および変更
  • データベースのバックアップ(明示的)
  • データベースの暗号化
  • ミラー管理

    DB_UTIL クラス

DB_UTIL は,データベーステーブルに格納されているデータに対して,数値,文字列,および日付/時刻の操作を実行するための SQL ストアドプロシージャを集めたクラスです。これらのプロシージャには次の機能が含まれます。

  • 三角関数,算術演算,ランダムなどの数学関数
  • 文字列操作関数
  • 日時関数

    ADO.NET

Blackfish SQL には ADO.NET 実装が含まれます。これは,同じ ADO.NET 実装である AdoDbx クライアントに類似しています。

  • DataStoreCommand:SQL 文やストアドプロシージャを実行します。
  • DataStoreCommandBuilder:データセットに行われた変更内容を基礎となるデータベースと調整するための単一テーブルコマンドを生成します。
  • DataStoreConnection:データベースに接続します。
  • DataStoreConnectionPool:接続プールにアクセスします。
  • DataStoreDataAdapter:データセットにデータを入力したり,データベースを更新します。
  • DataStoreDataReader:データベースサーバーから取得された結果テーブルにアクセスします。
  • DataStoreDataSourceEnumerator:ローカルネットワーク内のすべてのデータソースを検索するための列挙子を提供します。
  • DataStoreParameter:DataStoreCommand のパラメータを指定します。
  • DataStoreParameterCollection:DataStoreCommand のパラメータのコレクションです。
  • DataStoreProviderFactory:プロバイダによるデータソースクラスの実装のベースクラスです。
  • DataStoreRowUpdatedEventArgs:DataStoreDataAdapter の RowUpdated イベントのデータを保持します。
  • DataStoreRowUpdatingEventArgs:DataStoreDataAdapter の RowUpdating イベントのデータを保持します。
  • DataStoreTransaction:トランザクションを提供します。

    DB_ADMIN テーブル情報クラス

このグループには,さまざまな DB_ADMIN 関数から返される結果テーブルの列名情報を提供するクラスが含まれます。

  • ColumnColumns:組み込みのストアドプロシージャ DB_ADMIN.GET_COLUMNS から返される結果テーブルの列名。
  • DatabaseColumns:DB_ADMIN.GET_DATABASE_PROPS から返される結果テーブルの列名。
  • DataTypeColumns:組み込みのストアドプロシージャ DB_ADMIN.GET_DATATYPES から返される結果テーブルの列名。
  • IndexColumns:組み込みのストアドプロシージャ DB_ADMIN.GET_INDEX_COLUMNS から返される結果テーブルの列名を提供します。
  • IndexesColumns:組み込みのストアドプロシージャ DB_ADMIN.GET_INDEXES から返される結果テーブルの列名を提供します。
  • LockColumns:組み込みのストアドプロシージャ DB_ADMIN.GET_LOCKS から返される結果テーブルの列名を提供します。
  • MirrorStatusColumns:組み込みのストアドプロシージャ DB_ADMIN.GET_MIRRORS から返される結果テーブルの列名を提供します。
  • ProcedureColumnColumns:組み込みのストアドプロシージャ DB_ADMIN.GET_PROCEDURE_COLUMNS から返される結果テーブルの列名を提供します。
  • ProcedureColumns:組み込みのストアドプロシージャ DB_ADMIN.GET_PROCEDURES から返される結果テーブルの列名を提供します。
  • StatusLogColumns:組み込みのストアドプロシージャ DB_ADMIN.GET_STATUS_LOGS から返される結果テーブルの列名を提供します。
  • TableColumns:組み込みのストアドプロシージャ DB_ADMIN.GET_TABLES から返される結果テーブルの列名を提供します。

    その他のクラス

次のクラスは,接続,ログ,システムプロパティ,およびデータアクセスに関する情報を提供します。ミラーとスケジュールの関数を操作するためのクラスも提供します。

  • ConnectionProperties:Blackfish SQL ドライバでサポートされる接続プロパティの名前。
  • DataStoreErrorCode:データベースのシンボリックエラーコード。
  • DataStoreServer:サーバープロセスの開始および停止を制御します。
  • LicenseColumns:ライセンス関連のプロパティ名。
  • LogFilter:ログに記録されるイベントの名前を提供します。
  • MirrorTypes:SysMirrors.TYPE 列の値。
  • ScheduleColumns:ステータス情報を追加して SysMirrors を拡張します。
  • SchedulePeriod:SysSchedule.PERIOD 列の有効な値。
  • SysConnections:システムの /SYS/CONNECTIONS テーブルのテーブル名と列名。
  • SysMirrors:システムテーブル SYS.MIRRORS の列名を提供します。
  • SystemProperties:プロセス内で開かれているすべてのデータベースに適用されるシステムプロパティの名前を指定します。
  • SysQueries:システムの /SYS/QUERIES テーブルのテーブル名と列名。
  • SysSchedule:システムテーブル SYS.MIRROR_SCHEDULE の列名を提供します。
  • TriggerContext:接続インスタンスにアクセスし,新しい行と古い行にアクセスします。
  • TriggerReadRow:データ行への読み取りアクセスを提供します。
  • TriggerReadWriteRow:データ行への書き込みアクセスを提供します。

Server Response from: SC3