当前位置:Gxlcms > ASP > 在线数据库管理工具(db007) v1.5

在线数据库管理工具(db007) v1.5

时间:2021-07-01 10:21:17 帮助过:81人阅读

在线数据库管理工具 db007 下载://www.gxlsystem.com/codes/6195.html

代码如下:
<!--
'********************************
'* 用途:
'^ 以视图界面方式在线处理access、sql数据库
'* 作者:官世杰
'* 创建日期:2006-5-28
'* 2006-06-04 增加数据修改功能
'* 2006-06-10 增加了在空表中插入数据功能
'* 2006-09-8 增加修改字段名和表名功能,修正部分错误
'* 执行sql,如果是 select 就返回结果,否则返回执行结果
'* 本程序可以免费使用,转载请保留此信息
'********************************
-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>在线数据库管理工具 db007 1.5</title>
<style type="text/css">
<!--
body,td,th {font-family: "宋体";font-size: 12px;}
form {margin:0px;padding:0px;}
body {margin:5px;SCROLLBAR-ARROW-COLOR:#666666;SCROLLBAR-FACE-COLOR:#DDDDDD;SCROLLBAR-DARKSHADOW-COLOR:#999999;SCROLLBAR-HIGHLIGHT-COLOR:#FFFFFF;SCROLLBAR-3DLIGHT-COLOR:#CCCCCC;SCROLLBAR-SHADOW-COLOR:#FFFFFF;SCROLLBAR-TRACK-COLOR:#EEEEEE;}
input {    border-width: 1px;border-style:solid;border-color: #CCCCCC #999999 #999999 #CCCCCC;height: 16px;}
td {background:#FFF;}
textarea {border-width: 1px;border-style: solid;border-color: #CCCCCC #999999 #999999 #CCCCCC;}
a:link {text-decoration: none;}
a:visited {text-decoration: none;}
a:hover {text-decoration: underline;}
a:active {text-decoration: none;}
.fixSpan {width:150px;white-space:nowrap;word-break:keep-all;overflow:hidden;text-overflow:ellipsis;}
-->
</style>
</head>

<body>
<%
if request("key") = "db" then
    session("dbtype") = request("dbtype")
    session("dbstr") = request("dbstr")
    response.redirect "?"
end if

if request("key") = "createdatabase" then
    call createdatabase()
end if

if session("dbtype") = "" or session("dbstr") = "" then
    %>
    <form action="?key=db" method="post" name="dbt">
          <br>
          连接类型:
          <input name="dbtype" type="radio" value="access" onClick="dbstr.value='Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Password=;Data Source=<%=server.mappath("/")&"\"%>'" checked>
          ACCESS
          <input disabled="disabled" type="radio" name="dbtype" value="sql" onClick="dbstr.value='driver={SQL Server};database=;Server=;uid=;pwd='"> 
          SQL<br><br>
          连接字符:<input name="dbstr" type="text" id="dbstr" size="120" value="Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Password=;Data Source=<%=server.mappath("/")&"\"%>">
          <input type="submit" name="Submit" value="连接" /><br><br>
          注:access请使用绝对路径,本文件路径:<%=server.MapPath("db007.asp")%>
    </form>
    <form name="createdatabase" method="post" action="?key=createdatabase">
      <font color=red>创建数据库:</font>路径
      <input name="dataname" type="text" value="<%=server.MapPath("/")&"\database.mdb"%>" size="100">
      <input type="submit" name="Submit" value="创建">
    </form>
    <%
    response.End()
end if

'==================================================================建库
sub createdatabase()
    dim DBName,dbstr,myCat
    on error resume next
    DBName = request("dataname")
    dbstr = "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & DBName 
    Set myCat = Server.CreateObject( "ADOX.Catalog" ) 
    myCat.Create dbstr

    if err <> 0 then
        response.write err.description
        session("dbtype") = ""
        session("dbstr") = ""
        response.write "<input type='button' name='ok' value=' 返 回 ' onClick='javascript:history.go(-1)'>"
        response.end
    end if

    session("dbtype") = "access"
    session("dbstr") = dbstr
    response.redirect "?"
end sub

'==================================================================调用链接函数
conn()

function conn()
    dim conn1,connstr
    on error resume next
    select case session("dbtype")
    case "access"
        '==================================================================连接ACCESS数据库
        connstr = session("dbstr")
        Set Conn1 = Server.CreateObject("ADODB.Connection")
        conn1.Open connstr
    case "sql"
        '==================================================================连接SQL数据库
        set conn1 = Server.CreateObject("ADODB.Connection") 
        conn1.open session("dbstr") 
    end select

    if err <> 0 then
        response.write err.description
        session("dbtype") = ""
        session("dbstr") = ""
        response.write "<input type='button' name='ok' value=' 返 回 ' onClick='javascript:history.go(-1)'>"
        response.end
    end if

    set conn = conn1
end function


Sub echo(str)
    Response.Write(str)
End Sub

Function IIf(var, val1, val2)
    If var = True Then
        IIf = val1
     Else
        IIf = val2
    End If
End Function

'正则表达式函数,用于删除注释
'-------------------------------------
Function RegExpReplace(strng, patrn, replStr)
  Dim regEx,match,matches              ' 建立变量。
  Set regEx = New RegExp               ' 建立正则表达式。
  regEx.Pattern = patrn               ' 设置模式。
  regEx.IgnoreCase = True               ' 设置是否区分大小写。
  regEx.Global = True   ' 设置全局可用性。

  RegExpReplace = regEx.Replace(strng, replStr)         ' 作替换。
End Function

'==================================================================ADOVBS 常量声明

'---- DataTypeEnum Values ----
Const adEmpty = 0
Const adTinyInt = 16
Const adSmallInt = 2
Const adInteger = 3
Const adBigInt = 20
Const adUnsignedTinyInt = 17
Const adUnsignedSmallInt = 18
Const adUnsignedInt = 19
Const adUnsignedBigInt = 21
Const adSingle = 4
Const adDouble = 5
Const adCurrency = 6
Const adDecimal = 14
Const adNumeric = 131
Const adBoolean = 11
Const adError = 10
Const adUserDefined = 132
Const adVariant = 12
Const adIDispatch = 9
Const adIUnknown = 13
Const adGUID = 72
Const adDate = 7
Const adDBDate = 133
Const adDBTime = 134
Const adDBTimeStamp = 135
Const adBSTR = 8
Const adChar = 129
Const adVarChar = 200
Const adLongVarChar = 201
Const adWChar = 130
Const adVarWChar = 202
Const adLongVarWChar = 203
Const adBinary = 128
Const adVarBinary = 204
Const adLongVarBinary = 205

'---- FieldAttributeEnum Values ----
Const adFldMayDefer = &H00000002
Const adFldUpdatable = &H00000004
Const adFldUnknownUpdatable = &H00000008
Const adFldFixed = &H00000010
Const adFldIsNullable = &H00000020
Const adFldMayBeNull = &H00000040
Const adFldLong = &H00000080
Const adFldRowID = &H00000100
Const adFldRowVersion = &H00000200
Const adFldCacheDeferred = &H00001000

'---- SchemaEnum Values ----
'---- SchemaEnum Values ----
Const adSchemaProviderSpecific = -1
Const adSchemaAsserts = 0
Const adSchemaCatalogs = 1
Const adSchemaCharacterSets = 2
Const adSchemaCollations = 3
Const adSchemaColumns = 4
Const adSchemaCheckConstraints = 5
Const adSchemaConstraintColumnUsage = 6
Const adSchemaConstraintTableUsage = 7
Const adSchemaKeyColumnUsage = 8
Const adSchemaReferentialConstraints = 9
Const adSchemaTableConstraints = 10
Const adSchemaColumnsDomainUsage = 11
Const adSchemaIndexes = 12
Const adSchemaColumnPrivileges = 13
Const adSchemaTablePrivileges = 14
Const adSchemaUsagePrivileges = 15
Const adSchemaProcedures = 16
Const adSchemaSchemata = 17
Const adSchemaSQLLanguages = 18
Const adSchemaStatistics = 19
Const adSchemaTables = 20
Const adSchemaTranslations = 21
Const adSchemaProviderTypes = 22
Const adSchemaViews = 23
Const adSchemaViewColumnUsage = 24
Const adSchemaViewTableUsage = 25
Const adSchemaProcedureParameters = 26
Const adSchemaForeignKeys = 27
Const adSchemaPrimaryKeys = 28
Const adSchemaProcedureColumns = 29
Const adSchemaDBInfoKeywords = 30
Const adSchemaDBInfoLiterals = 31
Const adSchemaCubes = 32
Const adSchemaDimensions = 33
Const adSchemaHierarchies = 34
Const adSchemaLevels = 35
Const adSchemaMeasures = 36
Const adSchemaProperties = 37
Const adSchemaMembers = 38
Const adSchemaTrustees = 39
Const adSchemaFunctions = 40
Const adSchemaActions = 41
Const adSchemaCommands = 42
Const adSchemaSets = 43

'==================================================================返回字段类型函数
Function typ(field_type)
    'field_type = 字段类型值
    Select Case field_type
        case adEmpty:typ = "Empty"
        case adTinyInt:typ = "TinyInt"
        case adSmallInt:typ = "SmallInt"
        case adInteger:typ = "Integer"
        case adBigInt:typ = "BigInt"
        case adUnsignedTinyInt:typ = "TinyInt" 'UnsignedTinyInt
        case adUnsignedSmallInt:typ = "UnsignedSmallInt"
        case adUnsignedInt:typ = "UnsignedInt"
        case adUnsignedBigInt:typ = "UnsignedBigInt"
        case adSingle:typ = "Single" 'Single
        case adDouble:typ = "Double" 'Double
        case adCurrency:typ = "Money" 'Currency
        case adDecimal:typ = "Decimal"
        case adNumeric:typ = "Numeric" 'Numeric
        case adBoolean:typ = "Bit" 'Boolean
        case adError:typ = "Error"
        case adUserDefined:typ = "UserDefined"
        case adVariant:typ = "Variant"
        case adIDispatch:typ = "IDispatch"
        case adIUnknown:typ = "IUnknown"
        case adGUID:typ = "GUID" 'GUID
        case adDATE:typ = "DateTime" 'Date
        case adDBDate:typ = "DBDate"
        case adDBTime:typ = "DBTime"
        case adDBTimeStamp:typ = "DateTime" 'DBTimeStamp
        case adBSTR:typ = "BSTR"
        case adChar:typ = "Char"
        case adVarChar:typ = "VarChar"
        case adLongVarChar:typ = "LongVarChar"
        case adWChar:typ = "Text" 'WChar类型 SQL中为Text
        case adVarWChar:typ = "VarChar" 'VarWChar
        case adLongVarWChar:typ = "Text" 'LongVarWChar
        case adBinary:typ = "Binary"
        case adVarBinary:typ = "VarBinary"
        case adLongVarBinary:typ = "LongBinary"'LongVarBinary
        case adChapter:typ = "Chapter"
        case adPropVariant:typ = "PropVariant"
        case else:typ = "Unknown"
    end select
End Function

'==================================================================返回字段类型列表
Function fieldtypelist(n)
    dim strlist,str1,str2
    strlist = "<select name=""field_type"">"
    if session("dbtype") = "access" then
        strlist = strlist & "<option value=""VarChar"">文本</option>"
        strlist = strlist & "<option value=""Text"">备注</option>"
        strlist = strlist & "<option value=""Bit"">(是/否)</option>"
        strlist = strlist & "<option value=""TinyInt"">数字(字节)</option>"
        strlist = strlist & "<option value=""SmallInt"">数字(整型)</option>"
        strlist = strlist & "<option value=""Integer"">数字(长整型)</option>"
        strlist = strlist & "<option value=""Single"">数字(单精度)</option>"
        strlist = strlist & "<option value=""Double"">数字(双精度)</option>"
        strlist = strlist & "<option value=""Numeric"">数字(小数)</option>"
        strlist = strlist & "<option value=""GUID"">数字(同步ID)</option>"
        strlist = strlist & "<option value=""DateTime"">时间/日期</option>"
        strlist = strlist & "<option value=""Money"">货币</option>"
        strlist = strlist & "<option value=""Binary"">二进制</option>"
        strlist = strlist & "<option value=""LongBinary"">长二进制</option>"
        strlist = strlist & "<option value=""LongBinary"">OLE 对象</option>"

    else
        strlist = strlist & "<option value="""">选择类型</option>"
        strlist = strlist & "<option value=""BigInt"">bigint</option>"
        strlist = strlist & "<option value=""Binary"">binary(二进制数据类型)</option>"
        strlist = strlist & "<option value=""Bit"">bit(整型)</option>"
        strlist = strlist & "<option value=""Char"">char(字符型)</option>"
        strlist = strlist & "<option value=""DateTime"">datetime(日期时间型)</option>"
        strlist = strlist & "<option value=""Decimal"">decimal(精确数值型)</option>"
        strlist = strlist & "<option value=""Float"">float(近似数值型)</option>"
        strlist = strlist & "<option value=""Image"">image(二进制数据类型)</option>"
        strlist = strlist & "<option value=""Int"">int(整型)</option>"
        strlist = strlist & "<option value=""Money"">money(货币型)</option>"
        strlist = strlist & "<option value=""nchar"">nchar(统一编码字符型)</option>"
        strlist = strlist & "<option value=""ntext"">ntext(统一编码字符型)</option>"
        strlist = strlist & "<option value=""numeric"">numeric(精确数值型)</option>"
        strlist = strlist & "<option value=""nvarchar"">nvarchar(统一编码字符型)</option>"
        strlist = strlist & "<option value=""real"">real(近似数值型)</option>"
        strlist = strlist & "<option value=""smalldatetime"">Smalldatetime(日期时间型)</option>"
        strlist = strlist & "<option value=""smallint"">smallint(整型)</option>"
        strlist = strlist & "<option value=""smallmoney"">smallmoney(货币型)</option>"
        strlist = strlist & "<option value=""sql_variant"">sql_variant()</option>"
        strlist = strlist & "<option value=""text"">text(字符型)</option>"
        strlist = strlist & "<option value=""timestamp"">timestamp(特殊数据型)</option>"
        strlist = strlist & "<option value=""tinyint"">tinyint(整型)</option>"
        strlist = strlist & "<option value=""uniqueidentifier"">Uniqueidentifier(特殊数据型)</option>"
        strlist = strlist & "<option value=""varbinary"">varbinary(二进制数据类型)</option>"
        strlist = strlist & "<option value=""varchar"">varchar(字符型)</option>"
    end if
    str1 = """" & n & """"
    str2 = """" & n & """" & " selected"
    strlist = replace(strlist,str1,str2)
    strlist = strlist & "</select>"
    echo strlist
End Function

'==================================================================主界面
sub main(str)
    on error resume next
    %>
    <script language=javascript>
    ie = (document.all)? true:false
    if (ie){
    function ctlent(eventobject){if(event.ctrlKey && 
    window.event.keyCode==13){this.document.exesql.submit();}}
    }
    </script>
    <script language="javascript">
        function table_delete()
        {
        if (confirm("确认删除该记录吗?   该操作将不可撤销!!!"))
            return true;
        else
            return false;
        }
    </script>

    <form action="?key=sql" method=post name="exesql">        
        <font color=red>执行sql语句:</font><font color=#999999>(每句语句以“;”结束,支持(--)SQL注释,Ctrl + Enter 快速提交)</font>  <input type="button" value="刷新本页" onClick="javascript:location.reload()">     
        <span onClick="document.exesql.sql.rows+=5;" style="cursor:pointer;">+</span>
        <span onClick="if(document.exesql.sql.rows>9)document.exesql.sql.rows-=5" style="cursor:pointer;">-</span>
        <div style="float:left;width:600px;">
        <textarea id="sql" name="sql" style="width:600px;" rows="9" ondblClick="this.select();" onKeyDown="ctlent()"><%=request("sql")%></textarea><br />
        <input type="checkbox" name="SchemaTable" value="1" style="border:0px;">adSchemaTables 
        <input type="checkbox" name="SchemaColumn" value="2" style="border:0px;">adSchemaColumns
        <input type="checkbox" name="SchemaProvider" value="3" style="border:0px;">adSchemaProviderTypes   
        分页大小:
        <select name="pageSize">
          <%
          if request("pageSize") <> "" and  isNumeric(request("pageSize")) then
             echo "<option value='"&request("pageSize")&"' selected>"&request("pageSize")&"</option>"
          else
             echo "<option value='50'>50</option>"
          end if
          %>
          <option value="10">10</option>
          <option value="20">20</option>
          <option value="30">30</option>
          <option value="40">40</option>
          <option value="50">50</option>
          <option value="60">60</option>
          <option value="70">70</option>
          <option value="80">80</option>
          <option value="90">90</option>
          <option value="100">100</option>
        </select>

        </div>
        <div style="float:left;width:50px;padding:60px 0px 0px 5px;">
        <input type="submit" name="Submit_confirm" value="提交"> <br /> <br />  
        <input type="button" name="Submit3" value="清空" onClick="sql.value=''"><br /><br /> 
        <input type="button" name="ok" value="返回" onClick="javascript:history.go(-1)">
        </div>
    </form>  
    <div style="clear:both"></div>
    <% if str = "" then %>
    <form action="?key=addtable" method="post">        
        <div style="clear:both;text-align:left;"><br />
        <font color=red>创建新表:</font><br>
        表  名:<input type="text" name="table_name" size="20"><br>
        字段数:<input type="text" name="field_num" size="20">
        <input type="submit" name="Submit_create" value="提交">
        <input type="reset" name="Submit32" value="重置">
        </div>     
    </form> 
    <br><br>
    <a href="?key=tosql&strt=2">导出所有表结构到SQL</a>
    <%
    end if
end sub

'==================================================================创建表界面
sub add_table(table_name,field_num)
    'table_name = 表名称
    'field_num  = 字段数
    on error resume next
    if not IsNumeric(field_num) then
        echo "字段数必须是整数。"
        echo "<input type='button' name='ok' value=' 返 回 ' onClick='javascript:history.go(-1)'>"
        exit sub
    end if
    %>
    <p class="hei"><span>创建表:</span><%=table_name%></p>
    <form action="?key=createtable" method="post">
    <table width="600" border="0" cellpadding="2" cellspacing="1" bgcolor="#CCCCCC">
      <tr> 
        <td width="75" height="20" align="center">字段名</td>
        <td width="99" height="20" align="center">类 型</td>
        <td width="73" height="20" align="center">大 小</td>
        <td width="96" height="20" align="center">空值</td>
        <td width="83" height="20" align="center">自动编号</td>
        <td width="143" height="20" align="center">主 键</td>
      </tr>
      <% for i = 0 to field_num - 1 %>
      <tr> 
        <td width="75" height="20" align="center"> 
            <input type="text" name="field_name" size="10">
        </td>
        <td width="99" height="20" align="center"> 
            <% fieldtypelist(0) %>
        </td>
        <td width="73" height="20" align="center"> 
            <input type="text" name="field_size" size="10">
        </td>
        <td width="96" height="20" align="center"> 
            <select name="null">
              <option value="NOT_NULL">NOT_NULL</option>
              <option value="NULL">NULL</option>
            </select>
        </td>
        <td width="83" height="20" align="center"> 
          <select size="1" name="autoincrement">
            <option></option>
            <option>自动编号</option>
          </select>
        </td>
        <td width="143" height="20" align="left"> 
              <select name="primarykey">
                <option></option>
                <option value="primarykey">primarykey</option>
              </select>
        </td>
      </tr>
      <% next %>
      <tr> 
        <td height="35" align="center" colspan="5"> 
            <input type="hidden" name="i" value=<%=field_num%>>
            <input type="hidden" name="table_name" value="<%=table_name%>">
            <input type="submit" name="Submit" value=" 提 交 ">
              
            <input type="reset" name="Submit2" value=" 重 置 ">
             
          <input type="button" name="ok" value=" 放 弃 " onClick="javascript:history.go(-1)">
        </td>
        <td height="20"></td>
      </tr>
    </table>
    </form>
    <%
end sub

'==================================================================构建创建表的SQL语句
sub create_table()
    dim sql,i,primarykey
    on error resume next
    sql = "CREATE TABLE ["&request("table_name")&"] ("
    for i = 1 to request("i")
       sql = sql & "[" & request("field_name")(i) & "] " & request("field_type")(i)
          if request("field_size")(i) <> "" then
              sql = sql & "(" & request("field_size")(i) & ")"
          end if
          if request("null")(i) = "NOT_NULL" then
              sql = sql & " not null"
          end if
          if request("autoincrement")(i) = "自动编号" then
              sql = sql & " identity"
          end if
          if request("primarykey")(i) = "primarykey" then
              primarykey = request("field_name")(i)
          end if
        'if primarykey <> "" then
           sql = sql & ","
        'end if
    next
    if primarykey<>"" then
       sql=sql&" primary key (["&primarykey&"]) "
    end if
    sql = sql & ")"
    sql = replace(sql,"()","")  '构建空表
    response.redirect "?key=sql&sql=" & sql 
end sub


'==================================================================修改表名或字段名 2006-09-08
sub reobj()
    on error resume next
    Dim mydb,mytable,tablename
    tablename = request("tablename")
    Set mydb = Server.CreateObject("ADOX.Catalog")
    mydb.ActiveConnection = conn

    if request("obj") = "field" then   '修改字段名
        dim fieldsname,newfieldsname
        fieldsname = request("fieldsname")
        newfieldsname = request("newfieldsname")
        Set mytable = Server.CreateObject("ADOX.Table")
        Set mytable = mydb.Tables(tablename) 
        mytable.Columns(fieldsname).Name = newfieldsname
    end if

    if request("obj") = "table" then   '修改表名
        dim newtablename
        newtablename = request("newtablename")
        mydb.Tables(tablename).Name = newtablename
    end if

    if err <> 0 then
        echo  err.description
        echo "<input type='button' name='ok' value=' 返 回 ' onClick='javascript:history.go(-1)'>"
        exit sub
    end if

    if request("obj") = "field" then
        response.Redirect "?key=view&table_name=" & tablename
    else
        response.Redirect "?key=view&table_name=" & newtablename
    end if

end sub

'==================================================================查看表结构函数
sub view(table_name)
    'table_name = 表名称
    dim rs,sql,table,primary,primarykey,i,editstr,typs
    on error resume next
    table = table_name
    Set primary = Conn.OpenSchema(adSchemaPrimaryKeys,Array(empty, empty, table))
    if primary("COLUMN_NAME") <> "" then
        primarykey = primary("COLUMN_NAME")
    end if
    primary.Close
    Set primary = Nothing

    %>

    <script language="javascript">
        function table_delete()
        {
        if (confirm("确认删除该记录吗?   该操作将不可撤销!!!"))
            return true;
        else
            return false;
        }
    </script>

    <font color=red>表:<%=table_name%></font>    <input type="button" value="刷新本页" onClick="javascript:location.reload()"><br><br>
    <% if request("key") = "editfidlevi" then call editfidlevi() %>
    <table width="600" border="0" cellpadding="1" cellspacing="1" bgcolor="#CCCCCC">
    <tr> 
      <td width="125" height="20" align="center">字 段 名</td>
      <td width="110" align="center">类 型</td>
      <td width="83" align="center"> 设定大小</td>
      <td width="48" align="center">允许空</td>
      <td width="76" align="center">自动编号</td>
      <td width="54" align="center">主键</td>
      <td width="82" align="center">执行操作</td>
    </tr>
    <%
    sql = "SELECT * FROM [" & table_name & "] "
    Set rs = Conn.Execute(sql)
    if err = 0 then
        For i = 0 to rs.fields.count-1
        %>
        <tr> 
          <td height="20" align="left"><%=rs(i).name%></td>
          <td align="left"><%=typ(rs(i).type)%></td>
          <td align="center"><%=rs(i).definedsize%></td>
          <td align="center"><%=iif((rs(i).Attributes and adFldIsNullable)=0,"No","Yes")%></td>
          <td align="center"><%=iif(rs(i).Properties("ISAUTOINCREMENT") = True,"是","否")%></td>
          <td align="center"><%=iif(rs(i).name = primarykey,"是","否")%></td>
          <td align="center">
            <a href="?key=editfidlevi&fidle=<%=rs(i).name%>&table_name=<%=table_name%>&fidletype=<%=typ(rs(i).type)%>">修改</a> 
            <a href="?key=sql&sql=alter table [<%=table_name%>] drop [<%=rs(i).name%>];" onClick="return table_delete();">删除</a>
          </td>
        </tr>
        <%
            editstr = editstr&"<option value='"&rs(i).name&"'>"&rs(i).name&"</option>"
        next
        %>
        </table>
        <br>
        <a href="?key=tosql&strt=0&table_name=<%=table_name%>">导出表结构</a>  
        <a href="?key=sql&sql=select * from <%=table_name%>&table_name=<%=table_name%>&primarykey=<%=primarykey%>">浏览表记录</a>  
        <a href="?key=sql&sql=DROP TABLE <%=table_name%>" onClick="return table_delete();">删除表</a>     
        <input type="text" name="newtablename" size="20" value="<%=table_name%>">
        <input type="button" value="修改表名" onClick="location.href='?key=reobj&obj=table&tablename=<%=table_name%>&newtablename='+newtablename.value">
        <br><br>
        <%
        '判断是否有主键
        if primarykey = "" then
            echo "<font color=red>该表没有主键,执行操作可能会导致数据损坏或丢失。</font><br>"
            echo "你可以将:"
            echo "<select name='keyname'>"
            For i=0 to rs.fields.count-1
                echo "<option value=" & rs(i).name & ">" & rs(i).name & "</option>"
            next
            echo "</select> "
            echo "<input type=button value=设为主键 onclick=""location.href='?key=sql&sql=ALTER TABLE ["&table_name&"] ADD PRIMARY KEY (['+keyname.value+'])';"">"
            echo "<br><br>"
        end if
        '显示修改字段名
        echo "<select name='fieldsname'>"
        echo "<option value=''>选择字段</option>"
        echo editstr
        echo "</select> 改名为 "  & chr(10)
        echo "<input type='text' name='newfieldsname' size='20'> "  & chr(10)
        echo "<input type=button value=修改字段名 onclick=""location.href='?key=reobj&obj=field&tablename="&table_name&"&fieldsname='+fieldsname.value+'&newfieldsname='+newfieldsname.value"">"
        echo "<br><br>"
    end if
    rs.close
    set rs = nothing
    %>
    <font color=red>增加字段:</font><br><br>
    <form action="?key=addfield" method="post">
      <table width="600" height="39" border="0" cellpadding="2" cellspacing="1" bgcolor="#CCCCCC">
        <tr> 
          <td width="60" height="20" align="center">字段名</td>
          <td width="50" height="20" align="center">类型</td>
          <td width="58" height="20" align="center">设定大小</td>
          <td width="64" height="20" align="center">允许空值</td>
          <td width="66" height="20" align="center"> 自动编号</td>
          <td width="96" height="20" align="center">  </td>
        </tr>
        <tr> 
          <td width="60" height="20" align="center"> 
            <input type="text" name="fldname" size="10">
          </td>
          <td width="50" height="20" align="center"> 
            <% fieldtypelist(0) %>
          </td>
          <td width="58" height="20" align="center"> 
            <input type="text" name="fldsize" size="10">
          </td>
          <td width="64" height="20" align="center"> 
            <input name="null" type="checkbox" value="ON" checked>
          </td>
          <td width="66" height="20" align="center"> 
            <input type="checkbox" name="autoincrement" value="ON">
          </td>
          <td width="96" height="20" align="center"> 
            <input type="hidden" name="table_name" value="<%=table_name%>">
            <input type="submit" value="提交">
          </td>
        </tr>
    </table>
    </form>
    <%
end sub

'==================================================================修改字段属性的界面
sub editfidlevi()
    dim sql,rs,i
    on error resume next
    sql = "Select * From [" & request("table_name") & "]"
    set rs = conn.execute(sql)
    for i = 0 to rs.fields.count - 1
        if rs(i).name = request("fidle") then
        %>
        <script LANGUAGE="JavaScript">
            function validate(theForm) {
                if (theForm.type.value == "")
                {
                alert("请输入数据类型");
                theForm.type.focus();
                return (false);
                }
                return (true);
            }
        </script>
        <font color=red>修改字段属性:</font>
        <form action="?key=editfidle&fidle=<%=request("fidle")%>&table_name=<%=request("table_name")%>" method="post" name=frm onSubmit="return validate(frm)">
        <table width="600" border="0" cellpadding="2" cellspacing="1" bgcolor="#CCCCCC">
          <tr> 
            <td width="60" height="20" align="center">字段名</td>
            <td width="50" height="20" align="center">类型</td>
            <td width="58" height="20" align="center">设定大小</td>
            <td width="64" height="20" align="center">允许空值</td>
            <td width="66" height="20" align="center">自动编号</td>
            <td width="96" height="20"></td>
          </tr>
          <tr> 
            <td width="60" height="20" align="center"><%=rs(i).name%></td>
            <td width="50" height="20" align="center"> 
            <% fieldtypelist(request("fidletype")) %>
              </td>
              <td width="58" height="20"><input type="text" name="size" size="10"></td>
              <td width="64" height="20" align="center">
              <input type="checkbox" name="null" value="null"<%=iif((rs(i).Attributes and adFldIsNullable)=0,""," checked")%>>
              </td>
              <td width="66" height="20" align="center"> 
              <input type="checkbox" name="autoincrement" value="y"<%=iif(rs(i).Properties("ISAUTOINCREMENT") = True," checked","")%>>
              </td>
              <td width="96" height="20" align="center"> 
              <input type="submit" name="Submit" value="提交">
        &nbs

人气教程排行