设为首页   加入最爱           最新更新:全方位英文文章资料库
 
资料坊搜索: 标题 全文     
ADSI,使用ASP来实现通用的对数据库控制编程
   首页>>YesizeCOM>>电脑技能坊>>ASP>>正文       
 
广告招租,e-mail:yesize@hotmail.com

广告招租,e-mail:yesize@hotmail.com

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


上一篇:一段ADSI和EXCHANGE结合的示范代码 下一篇:一些有关ADSI技术的介绍

版权说明:作品来源于网上,版权归作者所有,如果无意中侵犯了您的版权,请来信告知,本站将在3个工作日内删除。yesize@hotmail.com
  热门小游戏分类 
射击小游戏 连连看小游戏
台球小游戏 成人小游戏
CS小游戏 化妆小游戏
赛车小游戏 休闲小游戏
篮球小游戏 换装小游戏
儿童小游戏 牛牛小游戏
麻将小游戏 冒险小游戏
美媚小游戏 益智小游戏
体育小游戏  
Society Recreation & Sports
Travel & Leisure Communications
Vehicles Computers
Fashion Arts & Entertainment
Reference & Education Disease & Illness
Writing & Speaking Politics
Product Reviews Food & Beverage
Finance Internet Business
Self Improvement Home & Family
Health & Fitness Business
最新更新内容
警惕“公务员报考热”背
公务员考试不是丈母娘考
一名新公务员的自白:我
公务员考脑筋急转弯与挂
北努斗:2006行政能力测
大讨论:06行测BT题目大
过来人回忆:当年,我也
一家之言:公务员热折射
公务员考试申论要是有正
数十万大学生走进公务员
      粤ICP备05005424         Copyright ©2000 - 2004 Yesize.COM