删除数据库中多个表中相关记录的操作

来源:互联网 发布:网络里诈尸是什么意思 编辑:程序博客网 时间:2024/04/25 00:41

If Trim(Request.Form("chkBox"))<>"" Then

       'Dim chks,strSQL,rsDel

       'strSQL = " DELETE FROM V_DQ_CDS00COR WHERE CORPKEY IN ( "

       set rsSchema=conn.OpenSchema(20) '先获取数据库中的表名及相关属性

       do while not rsSchema.eof

        if rsSchema(3)="TABLE"   then '从所有表中找出用户表

       ' response.write "select * from  '"&rsSchema(2)&"'  where 1<>1"&"<br>"

       colstr=""

       set col=conn.execute("select * from  "&rsSchema(2)&"  where 1<>1")

         for i=0 to col.fields.count-1

         colstr=colstr&col.fields(i).name&","  '获得每个表的列名,形成一个字符串

         next

        if instr(1,colstr,"CORPKEY") then   '查看关键字是否在列名字符串中,如在,则执行删除操作.

        strSQL="delete from "&rsSchema(2)&" where corpkey in ( "

         For Each chks In Request.Form("chkBox")

           strSQL = strSQL & "'"&chks & "',"

         Next

      

       strSQL = Left(strSQL,Len(strSQL)-1)

       strSQL = strSQL & " ) "

       'response.write instr(1,colstr,"CORPKEY")

       'response.write strSQL&"<br>"

       conn.Execute(strSQL) '删除记录

       end if

       'response.write  rsSchema(2)&"<br>" 'strSql

       'response.write  rsSchema(3)&"<br>"'

       'response.write colstr&"&<br>"

       'response.write instr(colstr,"CORPKEY,")&"<br>"

       col.close

       end if

       'col.close

      

       rsSchema.movenext

       loop

       rsSchema.close

      

End If

 

原创粉丝点击