0

Update ステートメントに問題があります。

UPDATE DownPeriod 
SET 
DownPeriod.EquipmentID = ? ?? ?? ? ??  ?? ? ?,
DownPeriod.DownDate = Forms!Edit!EditDownDateBox,
DownPeriod.DownTime = Forms!Edit!EditDownTimeBox, 
DownPeriod.[UpDate] = Forms!Edit!EditUpDateBox, 
DownPeriod.UpTime = Forms!Edit!EditUpTimeBox, 
DownPeriod.isScheduled = Forms!Edit!EditSchedCheck, 
DownPeriod.isUnscheduled = Forms!Edit!EditUnschedCheck, 
DownPeriod.Comments = Forms!Edit!EditCommentsDropDown
WHERE DownPeriod.DownPeriodID =Forms!Edit!RecordHistorySubform.Form!DownPeriodID;

クエスチョン マークがある場所は、私が問題を抱えている場所であり、何を入力すればよいかわかりません。

そのステートメントを削除すれば、更新に関する他のすべてが機能するので、正しい軌道に乗っていることがわかります。EquipmentID との違いは、別のテーブル エントリの入力に基づいてこの値を取得していることです。詳しく説明するために、ユーザーは Equipment Title を選択します。これは、一意の ID に関連する、Equip Table の別のフィールドです。

これまでのところ、私は DLOOKUP("[EquipmentID]", "Equipment", "[Title] = Forms!Edit!EditEquipmentDropDown") ステートメントを選択し、内部結合を使用して、途方に暮れており、助けが必要です! ありがとうございました!

4

2 に答える 2

1

新しい一意のIDの場合は、INSERTが必要です。すでに存在する場合は、WHERE句の一部として含める必要があります。

WHERE DownPeriod.DownPeriodID = Forms!Edit!RecordHistorySubform.Form!DownPeriodID AND DownPeriod.EquipmentID = Forms!Edit!EditEquipmentDropDown;

于 2012-07-03T18:28:39.297 に答える
1

ユーザーがドロップダウンからタイトルを選択しているとあなたは言います。ドロップダウンには、次の行に行ソースが含まれている必要があります。

  SELECT ID, Title FROM Equipment

ID を非表示の列として使用します。更新は次のようになります。

 DownPeriod.EquipmentID = Forms!Edit!EditTitleDropDown

余談ですが、MS Access フォームを機能させるために必要な作業は他にもたくさんあると思います。

于 2012-07-03T18:49:33.803 に答える