ADSI,使用ASP来实现通用的对数据库控制编程

编程|控制|数据|数据库

非常有价值的代码,下面的代码是使用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
%>

时间: 2024-08-18 03:32:58

ADSI,使用ASP来实现通用的对数据库控制编程的相关文章

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

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

使用ADSI、ASP和一对魔术戏法自动地创立一个虚拟目录

虚拟目录 使用ADSI.ASP和一对魔术戏法自动地创立一个虚拟目录,第二部分 Tom Moran 和 Jeff Sandquist 1999年2月22日 我们回来了.大家翘首以盼的这篇文章的第二部分现在在这儿.并且我想你将花费整个晚上看你的猫清洗自己. 这个月,Jeff Sandquist和我完成了我们的动态目录服务接口(Active Directory Services Interfaces ,ADSI)应用程序.如果你来晚了一点,没有问题:只要见这个系列的Part 1 http://www.

设计并实现用于ASP.NET一个通用的数据存取层应用程序

asp.net|程序|设计|数据 Designing and implementing a versatile data access tier for an ASP.NET applicationBy Paul Abarham In this article, we will drill down deeper in to the design of a n-tier architecture and our focus will be on the data access tier (DAT

技术-现在手上有一个asp.net mvc通用权限管理框架,想交换其它.net快速开发框架。

问题描述 现在手上有一个asp.net mvc通用权限管理框架,想交换其它.net快速开发框架. 主要用来学习这方面的技术,提升自己的水平.扩展自己的知识面.扣扣:八七八零壹壹八四六 解决方案 www.51aspx.com 这里找找看 解决方案二: 这种框架,你在google里面搜索 site:download.csdn.net .net 开发框架 能找出千千万万.但是我从来没有听说过有人用这些垃圾代码能"提升水平"的.

easyui-基于ASP.NET +Easyui通用权限开发框架,求指导.有演示

问题描述 基于ASP.NET +Easyui通用权限开发框架,求指导.有演示 基于ASP.NET +Easyui通用权限开发框架,求指导.有演示. api.ppngt.com

最新贡献:使用ADSI、ASP和一对魔术戏法自动地创立一个虚拟目录(旧帖整理)

Oscar 于 99-6-15 上午 09:44:00 加贴在 Joy ASP:使用ADSI.ASP和一对魔术戏法自动地创立一个虚拟目录,第二部分Tom Moran 和 Jeff Sandquist1999年2月22日我们回来了.大家翘首以盼的这篇文章的第二部分现在在这儿.并且我想你将花费整个晚上看你的猫清洗自己.这个月,Jeff Sandquist和我完成了我们的动态目录服务接口(Active Directory Services Interfaces ,ADSI)应用程序.如果你来晚了一点,

在ASP中实现通用的绝对路径生成方法

在我开发ASP + Access的Web应用时,都会遇到数据库文件路径的定位问题.如果在自己的计算机上实现时可以直接指定了事,但如果做的项目要上传到别的服务器或移动别的机器上运行使用,每次都要把这个路径改来改去的话显得有些繁锁,下面结合我做这个网站的经验来解决这个问题,让我们可以"一劳永逸". 在ASP中使用Server.MapPath("file.asp")语句后,会返回该文件在本地驱动器上的绝对路径,如"D:\MySite\test\file.asp&

ASP:利用ASP把图片上传到数据库

ASP(Active Server Pages)是Microsoft很早就推出的一种WEB应用程序解决方案,也是绝大多数从事网站开发人员很熟悉的一个比较简单的编程环境.通过ASP我们可以创建功能强大的动态的WEB应用程序.ASP虽然功能很强大,但有些功能用纯ASP代码完成不了,为了能保证开发出功能更加强大的WEB应用程序,我们可以借助调用COM组件. 在日常工作中,例如开发一个"商品网上销售系统"吧,为了使顾客对商品的外观有所了解,也就是顾客在看商品的文字介绍的同时在文字的旁边有该商品

ASP.NETR把Excel导入SQL数据库的自定义类

ASP.NETR把Excel导入SQL数据库的自定义类 以下是引用片段:public class SaveToSql {   public string strNewCodeId = string.Empty;   public string strNewCode = string.Empty;   public string strNewDes = string.Empty;   public string strOldCodeId = string.Empty;   public strin