欢迎光临
我们一直在努力

以前收集到的一些资料—ADSI,使用ASP来实现通用的对数据库控制编程

建站超值云服务器,限时71元/月

非常有价值的代码,下面的代码是使用adsi
的对象数据库概念编制成的,只要你理解了
我在前面文章说的东西,下面的代码只不过是adsi牛刀小试而已
只要有了下面这个思路,以后不论是对付什么数据库,就是不知道
数据库的结构也不用害怕了。
<%
— define dsn names in array
database_list=array("dsn_1","dsn_2","dsn_3")
— enable deleting table? — carefull!!
strenabledeletetable = false
—- end declaration

—- do not change code below this line ———————————————
field_value=array("integer","double","char(255)","memo","date","currency","yesno")
field_display=array("integer","number","text","memo","date/time","currency","yes/no")

dsn_name = request("databasename")
if not dsn_name = "" then
    set con = server.createobject("adodb.connection")
    con.open "dsn=" & dsn_name
end if
table_name = request("tablename")

if request("addnewtable")<>"" then
    if request("newtablename") <> "" then
        sql = "create table " & request("newtablename") & " (fldauto counter)"
        con.execute(sql)
    end if
end if
if request("addnewfield")<>"" then
    if request("newfieldname") <> "" then
        sql = "alter table " & table_name & " add " & request("newfieldname") & " " & request("newfieldtype") & " null"
        con.execute(sql)
    end if
end if
if request("deletetable")<>"" then
    sql = "drop table " & request("tablename")
    con.execute(sql)
end if
if request("deletecolumn")<>"" then
    for each item in request("deletecol")
        sql = "alter table " & request("tablename") & " drop " & item
        con.execute(sql)
    next
end if
—– file name——————————————————–
file = request.servervariables("script_name")
file = strreverse(file)
pos = instr(file,"/")
file = left(file, pos-1)
file = strreverse(file)
%>

<%
response.write "<!doctype html public ""-//w3c//dtd html 3.2 final//en"">"
response.write "<html><head><title>database control</title></head>"
response.write "<body bgcolor=""#ffffff""><br><br><center>"

————————————————————
response.write "<form action=""" & file & """ method=post>"
response.write "<b><font face=verdana size=3 color=""#008080""><u>total database control</u></font></b><br><br>"
response.write "<font face=verdana,arial size=2><b>database name: </b></font>"
response.write "<select name=""databasename"">"
for i = 0 to ubound(database_list)
if database_list(i) = request("databasename") then
    response.write "<option value=""" & database_list(i) & """ selected>" & database_list(i)
else
    response.write "<option value=""" & database_list(i) & """>" & database_list(i)
end if
next
response.write "</select> "
response.write "<input type=submit name=godatabase value=go>"
response.write "<hr></form>"
————————————————————-
response.write "<form action=""" & file & "?databasename=" & server.urlencode(dsn_name) & """ method=post>"

if dsn_name<>"" then
    set table = con.openschema (20)
    response.write "<font face=verdana,arial size=2>table names in " & dsn_name & ": </font><select name=tablename>"
    while not table.eof
        tblname = table("table_name")
        if left(tblname,4) <> "msys" and left(tblname,3) <> "sys" and left(tblname,4) <> "rtbl" then
            if tblname = table_name then
                response.write "<option value=""" & tblname & """ selected>" & tblname
            else
                response.write "<option value=""" & tblname & """>" & tblname
            end if
        end if
    table.movenext
    wend
    response.write "</select>"
    response.write "<input type=submit name=table value=go>"
    if strenabledeletetable = true then
        response.write "  <input type=submit name=deletetable value=delete>"
    end if
    response.write "</form>"
    response.write "<form action=""" & file & "?databasename=" & server.urlencode(dsn_name) & """ method=post>"
    response.write "<table><tr>"
    response.write "<td colspan=2><font face=verdana,arial size=2 color=""#ff0000"">add new table into " & dsn_name & "</font></td>"
    response.write "</tr><tr>"
    response.write "<th><font face=verdana,arial size=2>table name:</font></th>"
    response.write "<td><input type=text name=newtablename></td>"
    response.write "</tr><tr>"
    response.write "<td colspan=2 align=center><input type=submit name=addnewtable value=""add new table""></td></tr></table>"
    response.write "</form><hr>"
end if

if table_name <> "" and request("deletetable")="" then
    response.write "<form action=""" & file & "?databasename=" & server.urlencode(dsn_name) & "&tablename=" & table_name & """ method=post>"
    response.write "<table border=2 align=center cellpadding=2 cellspacing=2>"
    response.write "<tr>"
    response.write "<th colspan=4 align=left><font face=verdana,arial size=3 color=teal>" & table_name & "</font></th>"
    response.write "</tr><tr><th><font face=verdana,arial size=2>field name</font></th>"
    response.write "<th><font face=verdana,arial size=2>field size</font></th>"
    response.write "<th><font face=verdana,arial size=2>field datatype</font></th>"
    response.write "<th><font face=verdana,arial size=2>delete</font></th></tr>"

    sql = "select * from " & table_name
    set rs = con.execute(sql)
    for each fldname in rs.fields
        response.write "<tr>"
        response.write "<td><font face=verdana,arial size=2 color=""#000000"">" & fldname.name & "</font></td>"
        response.write "<td><font face=verdana,arial size=2 color=""#000000"">" & fldname.definedsize & "</font></td>"
        response.write "<td><font face=verdana,arial size=2 color=""#000000"">" & gettypename(fldname.type) & "</font></td>"
        response.write "<td align=center><input type=checkbox name=deletecol value=""" & fldname.name & """></td>"
        response.write "</tr>"
    next
    response.write "<tr><td colspan=4 align=center><input type=submit name=deletecolumn value=""delete selected column""></td></tr>"
    response.write "</table>"
    response.write "<table><tr>"
    response.write "<td colspan=2><font face=verdana,arial size=2 color=""#ff0000"">add new field into " & table_name &     "</font></td>"
    response.write "</tr><tr>"
    response.write "<th><font face=verdana,arial size=2>field name:</font></th>"
    response.write "<td><input type=text name=""newfieldname""></td>"
    response.write "</tr><tr>"
    response.write "<th><font face=verdana,arial size=2>field type:</font></th>"
    response.write "<td><select name=""newfieldtype"">"
    for i = 0 to ubound(field_value)
        response.write "<option value=""" & field_value(i) & """>" & field_display(i)
    next
    response.write "</select></td></tr>"
    response.write "<tr><td colspan=2 align=center><input type=submit name=addnewfield value=""add new field""></td></tr></table>"
response.write "</form>"
end if
response.write "</center></body></html>"

function gettypename(id)
    select case id
    case "3"
        gettypename = "number"
    case "200"
        gettypename = "text"
    case "129"
        gettypename = "text"
    case "201"
        gettypename = "memo"
    case "6"
        gettypename = "currency"
    case "11"
        gettypename = "yes/no"
    case "5"
        gettypename = "number"
    case "7", "133","134","135"
        gettypename = "date/time"
    case else
        gettypename = id
    end select
end function

sub selectdatatype(it)
    response.write "<select name=editcolname>"
    for i = 0 to ubound(field_value)
        if field_display(i) = it then
            response.write "<option value=""" & field_value(i) & """ selected>" & field_display(i)
        else
            response.write "<option value=""" & field_value(i) & """>" & field_display(i)
        end if
    next
    response.write "</select>"
end sub
%>

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 以前收集到的一些资料—ADSI,使用ASP来实现通用的对数据库控制编程
分享到: 更多 (0)

相关推荐

  • 暂无文章