プロが教えるわが家の防犯対策術!

ASP初心者です。検索結果で表示された複数のデータ行を、同じテーブルに再度コピーするにはどうしたらいいのでしょうか?DBはORACLEを使用しています。
sql="SELECT a.FLAG_ID,a.KZU_ID,b.SIZE_ID,b.BU_CODE,b.SYUBETU,b.ZU_NAME,b.KATASHIKI,a.SURYO,a.BIKOU,a.KZURA_ID,a.RIRA_ID,a.OZU_ID,a.OZURI_ID,b.ZU_ID,a.SASHI_ID,a.EDA_ID FROM DRRIST a,DRDAICYO b"
sql=sql & " where a.OZU_ID='" & zkzu_id1 & "' and a.OZURI_ID = " & raireki & ""
sql=sql & " and a.SASHI_ID='" & sashi_id & "' and a.EDA_ID = " & eda & ""
sql=sql & " and a.KZU_ID= b.ZU_ID"
sql=sql & " order by a.FLAG_ID asc"
set rs = oraDb.DbCreateDynaset(sql,clng(0))
if err.Number <> 0 then
Response.Write MSG003 & "<BR>"
Response.Write err.Description & "<BR><BR>"
end if
Response.Write "現在の登録状況"
Response.Write "<table border=1>"
Response.Write "<tr>"
Response.Write "<TR><TD>順序</TD><TD>図面番号</TD><TD>サイズ</TD><TD>分類コード</TD><TD>種別</TD><TD>名称</TD><TD>型式</TD><TD>単数</TD><TD>備考</TD><TD>来歴</TD><TD>"
cnt=0
Do While Not rs.EOF
if RIGHT(cnt/1,1)=".2" then
Response.Write "<tr BGCOLOR=""#F5F5F5"">"
else
Response.Write "<tr>"
end if
For iintLoop = 0 to rs.Fields.Count - 7
Response.Write "<td>" & rs(iintLoop )& "</td>"
Next
rs.DbMoveNext
cnt=cnt+1
Loop
Response.Write "</FORM>"
Response.Write "</table>"
ここで、表示された複数のデータ行を再度同じテーブル(DRRIST)にコピーしたいのですが、どのようにして行ったらよいかわかりません。何卒、ご教授宜しくお願いします。

A 回答 (1件)

記載されているSELECT文では、DRRISTテーブルとDRDAICYOテーブルからデータ取得していますが、この結果リストの形のままをDRRISTテーブルにコピーしてよいのでしょうか?



そうであれば、INSERT文に記載されているSELECT文を使用すればよいと思います。
sql2 = "INSERT INTO DRRIST"
sql2 = sql2 & sql
※INSERTのなかのSELECT文については参考URLを参照して下さい。

不明点があれば補足要求お願いいたします。

参考URL:http://www.wakhok.ac.jp/DB/subsection2.6.2.2.html
    • good
    • 0
この回答へのお礼

超初心者なものでおっしゃる通りINSERT文を使うことにより解決出来ました。どうも有難う御座いました。

お礼日時:2004/08/06 08:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!