掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
フィールド番号を取得することは可能ですか? (ID:10184)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>HOtaさん 「FieldByName」ですが、フィールド名を引数に指定して、フィールドの値を 取得するものではないでしょうか? フィールドの値ではなく、フィールドの位置番号が知りたいのです。 例えば、 > objDB.objTBL[TBLNAME].Fields[i].Value といったある項目の値を取得する場合の iの値です。 処理イメージとしては、、、 CSVの内容を元に、MDBデータの更新をかけます。 1)まずcsvレコードを1件読みます。(カンマは分解して配列化) 2)csvレコードの内容から既存データが存在するか?select文を発行します。 3)既存しなければinsert発行処理 4)既存すればupdate文発行処理 5)項1〜4をCSVデータを読みきるまで繰返し sqlを発行するときのwhere句を生成しようとした場合に、 > var wk : string > for i := 0 to objDatabase.TableDefs[PDt].Indexes['PrimaryKey'].Fields.Count - 1 do > begin > //項目名表示 > wk := objDatabase.TableDefs[PDt].Indexes['PrimaryKey'].Fields[i].Name > end; で、変数wkに項目名が入ります。 仮にキー項目が3つあったとしたら、プライマリキーのフィールド番号は 0、1、2と格納されます。 項目名に続く条件値をCSVから取得するのですが、CSVはカンマで区切って 配列に入れるので、MDBのデータフィールドと並びは同じハズです。 ※という前提でお願いします。(^^; しかしインデックスから読み取れるキーフィールド番号と データフィールド番号が必ずしも一致しているとは限りません。 CSV側のデータ上で、キー項目となる位置を特定したいのです。 いかがなものでしょうか。実現可能でしょうか。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.