DELETE_ID を 使った ソースコードを紹介する表示色の説明:ASP VBScriptは <% 〜 %> キーワードはDELETE_ID です。
<%@LANGUAGE=VBScript%>
<html>
<head>
<title>複数の削除データ選択とSQL DELETE文の発行</title>
</head>
<body>
<h1>複数の削除データ選択とSQL DELETE文の発行</h1>
<%
'ADO DB Connection オブジェクトを作成する、英文そのままじゃん
Set db=Server.CreateObject("ADODB.Connection")
'データアクセスにはJet.OLEDB.4.0を使うことを設定
db.Provider = "Microsoft.Jet.OLEDB.4.0"
'次に、接続DBの位置を渡すので、Server.MapPathで変換して渡す
db.ConnectionString = Server.MapPath("db029.mdb")
'やっとデータベースを開ける
db.open
'IDが送られてきたかチェックする
If IsEmpty(Request.Form("DELETE_ID")) = False Then 'IDが在りの時
'IDを条件にSQL DELETE文を作る
strSQL = "DELETE From KANSOU " '感想(KANSOU)テーブルを削除するので
'複数項目に対応するために、Where ID INを使用する
strSQL = strSQL & " Where ID IN (" & Request.Form("DELETE_ID") & ")"
Response.Write "<hr>データ削除IDは" & Request.Form("DELETE_ID")
'オマケで画面にデータ表示
Response.Write "<br>発行する(した)SQL文は<br><B><font color='green'>"
Response.Write strSQL & "</font></B><br>です<hr>"
'SQL文の発行
db.Execute(strSQL)
End If
'
'データ表示と削除ボタン生成
'
'一覧表示用のSQL文を作る
strSQL = "Select * From KANSOU " '感想(KANSOU)テーブルから全項目(*)セレクト
strSQL = strSQL & "ORDER BY WriteTime DESC" '並べ替えは時間の降順
'オマケで画面にデータ表示
Response.Write "<hr>発行する(した)SQL文は<br><B><font color='green'>"
Response.Write strSQL & "</font></B><br>です<hr>"
'お約束のレコードセットの作成 SQL文の発行
Set rs = db.Execute(strSQL)
'フォームを作成する ※ACTIONで自分自身を呼ぶ
Response.Write "<TD><FORM ACTION='test047-2.asp' METHOD='POST'>"
Response.Write "削除したいデータにチェックを入れ実行ボタンを押してください<br>"
Response.Write "<INPUT TYPE='submit' VALUE='削除実行'>"
'データの表示をテーブルで行う
Response.Write "<TABLE Border='1'>"
'見出しをバカっぽく、そのまま書き込む
Response.Write "<TR>"
Response.Write "<TD>アクション</TD>"
Response.Write "<TD>日付</TD>"
Response.Write "<TD>区分</TD>"
Response.Write "<TD>NO.</TD>"
Response.Write "<TD>感想</TD>"
Response.Write "</TR>"
'お約束のEOFまでループは(データが無くなるまでループ)、
Do While rs.EOF = False 'レコードセットの.EOFがFalseの間
Response.Write "<TR>" '内容を表示する、行開始のタグ<TR>
'CHECKBOX DELETE_ID 作成
Response.Write "<TD><INPUT type='CHECKBOX' NAME='DELETE_ID' VALUE='"
Response.Write rs.Fields.Item("ID") & "'></TD>"
'データの中身を表示
Response.Write "<TD>" & rs.Fields.Item("WriteTime") & "</TD>"
Response.Write "<TD>" & rs.Fields.Item("F_KUBUN") & "</TD>"
If rs.Fields.Item("F_NO") = 0 Then '0の全体かチェック
Response.Write "<TD>全体</TD>"
Else
Response.Write "<TD>" & rs.Fields.Item("F_NO") & "</TD>" 'NO表示
End If
Response.Write "<TD>" & rs.Fields.Item("F_MEMO") & "</TD>"
Response.Write "</TR>"
'次のレコードにポインタを移動する
rs.MoveNext 'これを忘れると悲惨なことに、、、
Loop
Response.Write "</TABLE>" 'テーブルは終わりです
Response.Write "<INPUT TYPE='submit' VALUE='削除実行'>"
Response.Write "</FORM>"
rs.Close '開いていたレコードセットを閉じる
db.Close 'データベースも閉じようよ
Set db = Nothing 'お行儀よくオブジェクトも開放しましょう
%>
<HR>
終了です。<br>
<A href="test029-1.asp">データの登録(テストデータを増やす、消したら書いてね)</a><br>
</body>
</html>
| 最近発売の雑誌を紹介する
不健康なプログラマーさん達へ(オイオイ)こんな雑誌もあります。
- 婦人之友 2008年 06月号
- LiVES (ライヴズ) 2008年 06月号
- アー・ユー・ハッピー ? 2008年 06月号
- サライ 2008年 6/5号
- がん治療最前線 2008年 07月号
- Good (グッド) リフォーム 2008年 07月号
- からだにいいこと 2008年 07月号
- わかさ 2008年 07月号
- NHK ためしてガッテン 2008年 07月号
|