最新のWeb開発のチュートリアル
 

ADO Status Property


<完全なフィールドオブジェクト参照

Statusプロパティは返しFieldStatusEnumの Fieldオブジェクトの状態を示す値を。 デフォルト値はadFieldOKです。

任意の更新は、次に失敗した場合、エラーが返され、Statusプロパティが動作し、エラーステータスコードの組み合わせの値を示しています。 各フィールドのStatusプロパティフィールドが、追加、変更、または削除されなかった理由を特定するために使用することができます。

フィールドの追加、変更、または削除の問題は、このプロパティを介して報告されています。 ユーザーがフィールドを削除した場合、それは、Fieldsコレクションで削除対象としてマークされます。 更新呼び出しがエラーを返した場合、ユーザは自分が権限のないフィールドを削除しようとしましたので、このフィールドのステータスがadFieldPermissionDeniedまたはadFieldPendingDeleteされます。

構文

objfield.Status

<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"

set rs = Server.CreateObject("ADODB.Recordset")
rs.open "Select * from orders", conn

response.write(rs.Fields(0).Status)

rs.Close
conn.close
%>

FieldStatusEnum値

定数 説明
adFieldOK0 デフォルト。 フィールドが正常に追加または削除されました
adFieldCantConvertValue2 フィールドは、データの損失なしに検索または格納することができません
adFieldIsNull3 プロバイダがnull値を返さ
adFieldTruncated4 データソースから読み取るときに可変長データが切り捨てられました
adFieldSignMismatch5 プロバイダによって返されたデータ値は、署名されたが、ADOフィールド値のデータ型は、符号なしました
adFieldDataOverflow6 プロバイダから返されたデータは、フィールドのデータ型をオーバーフローし
adFieldCantCreate7 プロバイダが制限を超えたため、フィールドを追加することができませんでした
adFieldUnavailable8 データソースから読み取る際プロバイダが値を決定することができませんでした
adFieldPermissionDenied9 それは読み取り専用であるため、フィールドを変更することはできません
adFieldIntegrityViolation10 それは計算された、または誘導されたエンティティであるので、フィールドを変更することはできません
adFieldSchemaViolation11 値は、フィールドのデータソースのスキーマ制約に違反しました
adFieldBadStatus12 無効なステータス値は、OLE DBプロバイダーにADOから送信されました
adFieldDefault13 データを設定する際に、フィールドのデフォルト値が使用されました
adFieldIgnore15 ソース内のデータ値を設定する場合、このフィールドはスキップされました
adFieldDoesNotExist16 フィールドが存在しません。
adFieldInvalidURL17 データソースのURLは、無効な文字が含まれています
adFieldResourceLocked18 データソースがロックされているため、プロバイダは操作を実行できません
adFieldResourceExists19 オブジェクトが既に先URLに存在するため、プロバイダは操作を実行できないと、オブジェクトを上書きすることができません
adFieldCannotComplete20 ソースで指定されたURLのサーバーは、操作を完了できませんでした
adFieldVolumeNotFound21 プロバイダは、URLで示されるストレージボリュームを見つけることができません
adFieldOutOfSpace22 プロバイダは、移動またはコピー操作を完了するのに十分な記憶領域を取得することができません
adFieldCannotDeleteSource23 移動操作時には、ツリーまたはサブツリーを新しい場所に移動しましたが、ソースは削除できませんでした
adFieldReadOnly24 データソース内のフィールドは読み取り専用です
adFieldResourceOutOfScope25 送信元または宛先URLは、現在のレコードの範囲外であります
adFieldAlreadyExists26 指定したフィールドはすでに存在します
adFieldPendingInsert0x10000 追加の操作は、ステータスが設定される原因となりました。 Updateメソッドが呼び出された後、フィールドにはFieldsコレクションに追加されるようにマークされています
adFieldPendingDelete0x20000 削除操作は、ステータスが設定される原因となりました。 Updateメソッドが呼び出された後のフィールドは、Fieldsコレクションから削除対象としてマークされています
adFieldPendingChange0x40000 フィールドが削除され、再度追加または以前adFieldOKのステータスを有していたフィールドの値が変更されたされました
adFieldPendingUnknown0x80000 プロバイダは、フィールドの状態が設定された原因を操作判断することはできません
adFieldPendingUnknownDelete0x100000 プロバイダは、フィールドの状態が設定される原因となった、とUpdateメソッドが呼び出された後、フィールドがFieldsコレクションから削除されることをどのような操作を決定することはできません。

<完全なフィールドオブジェクト参照