Connection (クラス)
public abstract Connection
パッケージ: CURL.DATA-ACCESS.CONNECTED
直接継承しているサブクラス: BasicConnection, FileConnection

接続オブジェクトとは、1 つまたは複数の ConnectedRecordSet と、データベース サーバーなどのデータ リポジトリの間に位置するものです。

説明

特定の種類の Connection を扱うために、特別な RecordSet が必要になる場合があります。指定された任意の Connection インスタンスに対応する RecordSet を作成するには、Connection.create-record-set メソッドを使います。
効率性の面から、同一データベースを使用する ConnectedRecordSet がすべて同じ接続オブジェクト インスタンスを使うようにすることを推奨します。これにより、クライアント アプレットのリソースだけでなく、サーバー上のリソースも節約できます。

コンストラクタ
default:url で識別されるサーバーへの接続を初期化します。
コンストラクタ public {Connection.default url:Url}

プロパティ
url:データベース サーバーとの通信に使う URL。
フィールド public-get private-set Connection.url:Url

メソッド
create-record-set:この接続での使用に適した ConnectedRecordSet のサブクラスを作成して返します。
public abstract {Connection.create-record-set
database-name:String,
query:String,
request-modifiable?:bool = false,
size-limit:int = -1,
...:EventHandler
}:ConnectedRecordSet
get-database-names:この接続から利用できるデータベースのリストを取得します。
public abstract {Connection.get-database-names}:StringArray
get-fields:指定されたデータベース内でテーブルの列またはクエリ結果を表す RecordFields オブジェクトを返します。
public abstract {Connection.get-fields
database-name:String,
query:String
}:RecordFields
get-tables:指定データベースのテーブルのリストを取得します。
public abstract {Connection.get-tables
database-name:String
}:StringArray
reset:Connection を初期状態に戻します。
public abstract {Connection.reset}:void
table-exists?:指定データベースに指定テーブルが存在する場合は true を返します。
public abstract {Connection.table-exists?
database-name:String,
table:String
}:bool
メソッド 継承 Object: object-describe, object-describe-for-debugging, object-serialize



コンストラクタ詳細
default (コンストラクタ)
public {Connection.default url:Url}

url で識別されるサーバーへの接続を初期化します。

説明

サブクラスでは、ここに格納された状態を初期化するためにこのコンストラクタを呼び出す必要があります。



プロパティ詳細
url (フィールド)
public-get private-set Connection.url:Url

データベース サーバーとの通信に使う URL。

説明

この URL の形式は接続の種類によって決まります。使用する接続クラスのコンストラクタの説明を参照してください。





メソッド詳細
create-record-set (メソッド)
public abstract {Connection.create-record-set
database-name:String,
query:String,
request-modifiable?:bool = false,
size-limit:int = -1,
...:EventHandler
}:ConnectedRecordSet

この接続での使用に適した ConnectedRecordSet のサブクラスを作成して返します。

database-name: Connection で認識されているデータベースの名前。(これらの名前のリストを得るには Connection.get-database-names を使います。)
query: RecordSet にデータを挿入するのに使うクエリ。
request-modifiable?: true の場合、変更可能な RecordSet を返す動作が行われます。一部のサブクラスでは query が複雑すぎる場合に変更可能な RecordSet を作成できないことがあります。
size-limit: ロードされるレコードの数を制限するのに使われます。既定値の -1 は、制限なしを意味します。
...: このレコードセットに追加される EventHandler を含めることができます。


get-database-names (メソッド)
public abstract {Connection.get-database-names}:StringArray

この接続から利用できるデータベースのリストを取得します。

注意事項

サーバーとのトラフィックを最小限に抑えるため、このゲッターはキャッシュされている情報を返します。キャッシュをクリアしてサーバーから情報を強制的に更新するには Connection.reset を呼び出します。


get-fields (メソッド)
public abstract {Connection.get-fields
database-name:String,
query:String
}:RecordFields

指定されたデータベース内でテーブルの列またはクエリ結果を表す RecordFields オブジェクトを返します。

説明

query パラメータの解釈は、Connection の種類によって異なります。実装では通常 RecordField のサブクラスをフィールド メタデータに使用します。


get-tables (メソッド)
public abstract {Connection.get-tables
database-name:String
}:StringArray

指定データベースのテーブルのリストを取得します。



reset (メソッド)
public abstract {Connection.reset}:void

Connection を初期状態に戻します。

説明

このメソッドはクライアント側の接続でキャッシュされている情報をすべて削除し、メタデータが次に必要になったときにサーバーから取得されるようにします。


table-exists? (メソッド)
public abstract {Connection.table-exists?
database-name:String,
table:String
}:bool

指定データベースに指定テーブルが存在する場合は true を返します。