Microsoft Access 掲示板

更新クエリのDateadd

7 コメント
views
4 フォロー

お世話になります

「T90_テスト」というテーブルに以下の項目があります
年月 2024/05
日付  2024/05/03
名前  Test

この年月と日付を単純に1か月プラスして下記のように全データを更新したいです
年月 2024/06
日付  2024/06/03
名前  Test

そのため、更新クエリを下記のように作成しました
フィールド 年月
レコードの更新 "2024/06"

フィールド 日付
レコードの更新 DateAdd("m",1,[日付])

何も更新されないのですが、何か間違ってますか??😥
宜しくお願いいたします。

aya
作成: 2024/07/11 (木) 10:42:33
通報 ...
1

「T90_テスト」の「年月」と「日付」フィールドのデータ型はそれぞれなんでしょうか。

あと、現状の更新クエリのSQLをコピーしてここに貼り付けてください。

エラーメッセージが表示されるなら、それも提示してください

2

ありがとうございます
年月がテキストで日付が日付時刻型になります
SQLは以下のとおりです
エラーにはならず、なにも更新されません。。。

UPDATE T90 SET T90.年月 = "2024/06", T90.日付 = DateAdd("m",1,[日付]);

宜しくお願いいたします

3
hiroton 2024/07/11 (木) 17:46:29 edf98@f966d

エラーメッセージに限らず、正常に動作するはずの場合と比べておかしな動作をしている部分(動作/表示するはずなのに何も起きないモノ)を洗い出すと良いですよ

テーブルの内容をほかのテーブルの内容で更新する (Access)(Crie Anabukiさん)

正しく「実行」はしていますか?
実行時の確認メッセージは表示されますか?
メッセージに表示される件数は想定したものですか?


「T90_テスト」というテーブル

UPDATE T90 SET T90.年月 = "2024/06", T90.日付 = DateAdd("m",1,[日付]);

「T90」を更新しても「T90_テスト」が更新されることはありませんね

4

ありがとうございます。
SQLは名前違ってしまいましたがT90_テストとT90は同じものです
ごめんなさい
実行はしています
どうしても原因が分からなくて。。。

上のSQLだと、2024/05のデータを2024/06に更新したいのですが何か足りませんか?
現在はただ2024/05のデータが表示されるだけで更新がされません
宜しくお願いいたします。

5

実行はしています

どのような状況下において、どのような操作によってその更新クエリを実行されたのかについて具体的に明記されることをお奨めします。

  • ナビゲーションウィンドウでその更新クエリを選択して実行した。

  • その更新クエリがデザインビューで表示されている状態において、[クエリ デザイン]タブ → [結果]グループ → [実行]をクリックした。

  • [クエリを開く]アクションを呼び出すマクロを実行した。

  • DoCmd.OpenQuery メソッドを呼び出すプロシージャを実行した。

  • 上記以外の実行操作。

現在はただ2024/05のデータが表示されるだけで更新がされません

また、更新クエリの実行結果をどのようにして確認されたのかについても明記して下さい。

  • 前述のいずれかの方法によって更新クエリを実行した後、ナビゲーションウィンドウからテーブル[T90]をデータシートビューで開いた。

  • テーブル[T90]をレコードソースとする帳票フォーム上において、更新クエリを呼び出すイベントマクロ、またはイベントプロシージャを実行した。

  • 上記以外の確認方法。

6

提示されている情報をもとにサンプルを作成して実行してみましたが、問題なく更新できました。

更新前のテーブル
更新前のテーブル

更新クエリのSQL

UPDATE T90 SET [g] = "2024/06", T90.日付 = DateAdd("m",1,[日付]);

上記クエリをナビゲーションウィンドウでのダブルクリックで実行

更新クエリ実行後のテーブル

更新クエリ実行後のテーブル

つまり、提示されている情報での設計に問題はないです。

原因としては、
更新クエリが正しく実行されていないか、
更新後のデータの確認方法が正しくないか、
ぐらいしか思いつきません。

skさんの回答で提示されている情報を開示してください。

また、新規ファイルで、上記のようにテーブルと更新クエリを作成して実行したらどうなるかも試してみて結果を報告してください。

7

解決済み

大変お世話になっております。
おっしゃる通り、新しいクエリを作成して1から同じように作り直したところうまく処理できるようになりました。
何が原因だったのでしょうか。。。
お騒がせしました。
ここの掲示板はいつも本当に頼りになります。
本当にどうもありがとうございました😌