Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3437 / 9994 ←次へ | 前へ→

【9818】Re:2テーブル共通のレコード検索について
質問  ゆっぴぃ  - 07/9/8(土) 11:22 -

引用なし
パスワード
   小僧 さん・・・
やっぱりできませんでした。


SELECT テーブルA.ID, テーブルA.品名
FROM テーブルA
LEFT JOIN テーブルB
ON (テーブルA.品名 = テーブルB.品名) AND (テーブルA.ID = テーブルB.ID)
WHERE テーブルB.ID Is Not Null;

教えていただいたSQLはこれです。
実際にはテーブルBの価格を更新したいので

SELECT テーブルA.ID, テーブルA.品名, テーブルB.価格
FROM テーブルA
LEFT JOIN テーブルB
ON (テーブルA.品名 = テーブルB.品名) AND (テーブルA.ID = テーブルB.ID)
WHERE テーブルB.ID Is Not Null;

のようにSELECTの一番後ろに更新したいフィールドを追加しました。


そしてそのフィールドに【100】という数字を入れてみようと思ったので

Dim stSQL as string
Set rs = db.OpenRecordset(stSQL, dbOpenDynaset)
rs.MoveFirst
Do Until rs.EOF
  rs.Edit
  rs.価格 = 100
  rs.Update
Loop

と記述してみたのですが・・・
rs.Edit のところで
《実行時エラー3027
データベースまたはオブジェクトは読み取り専用なので、更新できません。》
と表示されます。

そういえば、選択クエリは2つ以上のテーブルからフィールドを選択した場合
更新とかはできなかったような気がします。


教えていただいたコードの後はどのように書けばよかったのでしょうか?
それともSQLの追加の方法が間違っていたのでしょうか。

質問ばかりで申し訳ないのですがぜひとも教えてください!
1,912 hits

【9809】2テーブル共通のレコード検索について ゆっぴぃ 07/9/7(金) 13:20 質問[未読]
【9810】Re:2テーブル共通のレコード検索について 小僧 07/9/7(金) 14:27 回答[未読]
【9817】Re:2テーブル共通のレコード検索について ゆっぴぃ 07/9/7(金) 22:44 質問[未読]
【9818】Re:2テーブル共通のレコード検索について ゆっぴぃ 07/9/8(土) 11:22 質問[未読]
【9819】Re:2テーブル共通のレコード検索について 小僧 07/9/8(土) 11:52 回答[未読]
【9820】Re:2テーブル共通のレコード検索について ゆっぴぃ 07/9/8(土) 15:20 質問[未読]
【9821】Re:2テーブル共通のレコード検索について 小僧 07/9/8(土) 17:50 回答[未読]
【9822】Re:2テーブル共通のレコード検索について ゆっぴぃ 07/9/8(土) 22:56 質問[未読]
【9823】Re:2テーブル共通のレコード検索について 小僧 07/9/9(日) 7:02 回答[未読]
【9824】Re:2テーブル共通のレコード検索について ゆっぴぃ 07/9/9(日) 14:16 お礼[未読]
【9826】Re:2テーブル共通のレコード検索について hatena 07/9/10(月) 10:23 発言[未読]

3437 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078201
(SS)C-BOARD v3.8 is Free