Page 439 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼ACCESSでのSQL命令について morik 03/10/14(火) 17:24 ┣Re:ACCESSでのSQL命令について イケガミ 03/10/14(火) 17:40 ┣Re:ACCESSでのSQL命令について 孫悟空 03/10/15(水) 22:33 ┣Re:ACCESSでのSQL命令について μ 03/11/6(木) 1:16 ┗ありがとうございました。 morik 03/11/20(木) 8:47 ─────────────────────────────────────── ■題名 : ACCESSでのSQL命令について ■名前 : morik ■日付 : 03/10/14(火) 17:24 -------------------------------------------------------------------------
TABLEの中のIDが1で項目1、項目2、項目3の内容が全て空白だったら削除 という命令をしたいのですが以下のSQLを実行させると項目1が空白のときしか TABLEの中身が削除されません。 sql = " DELETE * FROM TABLE " _ & " WHERE ID = '1'" _ & " And (IsNull(項目1) = true or 項目1 = "") " _ & " And (IsNull(項目2) = True or 項目2 = "") " _ & " And (IsNull(項目3) = True Or 項目3 = "") " dbs.execute sql どなたかご存知の方教えてください。 よろしくお願いします。 |
> sql = " DELETE * FROM TABLE " _ > & " WHERE ID = '1'" _ > & " And (IsNull(項目1) = true or 項目1 = "") " _ > & " And (IsNull(項目2) = True or 項目2 = "") " _ > & " And (IsNull(項目3) = True Or 項目3 = "") " sql = " DELETE * FROM TABLE " _ & " WHERE ID = '1'" _ & " And Len(Nz(項目1,"") & Nz(項目2,"") & Nz(項目3,"")) = 0" ではどうでしょうか? あと、SQLという変数名は、SQLプロパティというのがDAOにありますので、 strSql とかのように変更した方がいいと思います。 |
▼morik さん: >TABLEの中のIDが1で項目1、項目2、項目3の内容が全て空白だったら削除 >という命令をしたいのですが以下のSQLを実行させると項目1が空白のときしか >TABLEの中身が削除されません。 > > sql = " DELETE * FROM TABLE " _ > & " WHERE ID = '1'" _ > & " And (IsNull(項目1) = true or 項目1 = "") " _ > & " And (IsNull(項目2) = True or 項目2 = "") " _ > & " And (IsNull(項目3) = True Or 項目3 = "") " > > dbs.execute sql > >どなたかご存知の方教えてください。 >よろしくお願いします。 やりたいのは、このようなSQLでは? sql="DELETE * FROM TABLE " _ & "WHERE ID = '1' " _ & "And (項目1 is null or 項目1 = "") " _ & "And (項目2 is null or 項目2 = "") " _ & "And (項目3 is null or 項目3 = "") " 違っていたらゴメンです。 |
▼morik さん: >TABLEの中のIDが1で項目1、項目2、項目3の内容が全て空白だったら削除 >という命令をしたいのですが以下のSQLを実行させると項目1が空白のときしか >TABLEの中身が削除されません。 > > sql = " DELETE * FROM TABLE " _ > & " WHERE ID = '1'" _ > & " And (IsNull(項目1) = true or 項目1 = "") " _ > & " And (IsNull(項目2) = True or 項目2 = "") " _ > & " And (IsNull(項目3) = True Or 項目3 = "") " > > dbs.execute sql > >どなたかご存知の方教えてください。 >よろしくお願いします。 ありがちなチョンボですね。 お好きな方でどうぞ。 sql = " DELETE * FROM TABLE " _ & " WHERE ID = '1'" _ & " And (IsNull(項目1) or 項目1 = '') " _ & " And (IsNull(項目2) or 項目2 = '') " _ & " And (IsNull(項目3) or 項目3 = '') " sql = " DELETE * FROM TABLE " _ & " WHERE ID = '1'" _ & " And (IsNull(項目1) or 項目1 = """") " _ & " And (IsNull(項目2) or 項目2 = """") " _ & " And (IsNull(項目3) or 項目3 = """") " |
イケガミさん、孫悟空さん、 μ さん有難うございました。 助かりました。 |