VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2002/09/03(Tue) 11:59
投稿者A221
Eメール
URL
タイトルRe^6: VB SQLで アクセステーブルを操作

えー、とろさんが先に回答されているので蛇足的になりますが、

まずUPDATE節が
---------------------------------------------------------
sqltmp = "update B inner join C on B.b1=C.c1 set b2("
sqltmp = sqltmp & Day(w) & " - day(C.c2)) "
sqltmp = sqltmp & "where (C.c2 Between # " & Format(x, "yy/mm/dd"
)
sqltmp = sqltmp & " #" & "and # " & Format(w, "yy/mm/dd&
quot;) & "#)"

でINSERT節が
---------------------------------------------------------
sqltmp = "insert into B (b1 b2 b3) " & "select C.c1,"
sqltmp = sqltmp & Day(w) & " - day(C.c2),A.a2 "
sqltmp = sqltmp & "from A,B inner join C on B.b1=C.c1 "
sqltmp = sqltmp & "where ((C.c2 between C.c2 Between # "
sqltmp = sqltmp & Format(x, "yy/mm/dd") & " #"" & &q
uot;and # "
sqltmp = sqltmp & Format(w, "yy/mm/dd") & "#) " & "and (
B.b1 is null))"

---------------------------------------------------------
こうなると思います。

文字列の合成なので、動作の効率的には悪いですが、
区切り文字と型ちがいとかのエラーがわかりやすいので
私はいつも上記のように書いてます。

Msgbox sqltmp
で、プログラム中に表示させることもできますし。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -