[OO4O] テーブルからデータの読出し

  サンプル



  

Set OraDatabase	= OraSession.GetDatabaseFromPool(10)
SqlQuery		= "select * from テーブル名" 
Set OraDynaset	= OraDatabase.CreateDynaset(SqlQuery,2) 
Set Columns	= OraDynaset.Fields

Do while not OraDynaset.EOF
	Response.Write Columns( "項目名" ).Value & "<br>"
	OraDynaset.MoveNext
Loop
  

GetDatabaseFromPool はデータベースオブジェクトの作成です。引数の 10 は、「待機時間」で単位はミリセカンドです。
OraDatabase.CreateDynaset は、ダイナセットの作成です。引数の 2 は、「オプション」です。



  待機時間

プールに最大数のオブジェクト数があって、すべてが使用中の場合に、このコールが次に
使用可能なオブジェクトを待機している時間です



  オプション

以下の数値の和を渡します

0 デフォルト動作を受け入れる。
1 データベース・パラメータの自動バインディングを実行しない。
2 データベースから取り出した文字列データに続くブランクを切り捨てない。
4 ダイナセットを読込み専用にする。
8 ダイナセット用のローカル・データ・キャッシュを作成しない。ローカル・キャッシュがない場合、ダイナセットの以前の行は使用できません。ただし、データベースからのデータの取出し(移動操作)および行からのデータの取出し(フィールド操作)のパフォーマンスは向上します。ダイナセットの行全体を1回のみ使用するアプリケーションでは、パフォーマンスを向上させ、リソースの使用を削減するために、このオプションを使用します。
16 データベースのOracleモードと同じように動作する。ただし、作成中のダイナセットにのみ影響する。データベースがOracleモードで作成されている場合、ダイナセットはそのプロパティを(互換性を保つために)継承します。
32 データベースのORADB_NO_REFETCHモードと同じように動作する。ただし、このモードは作成中のダイナセットにのみ影響します。データベースがORADB_NO_REFETCHモードで作成されている場合、ダイナセットはそのプロパティを(互換性を保つために)継承します。
64 ダイナセットの作成時にMoveFirstを強制しない。BOFとEOFは両方ともTRUEです
128 UpdateとDeleteでは、読取りの一貫性を確認しない。



  ユーザ関数を使用した記述

「サンプル」と比較して下さい。

  

Set OraDatabase	= GetDatabase( )
SqlQuery		= "select * from テーブル名" 
if OraSelect( OraDatabase, OraDynaset, SqlQuery ) then
	Set Columns	= OraDynaset.Fields
	Do while not OraDynaset.EOF
		Response.Write Columns( "項目名" ).Value & "<br>"
		OraDynaset.MoveNext
	Loop
end if
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ