仓酷云

标题: ASP网页编程之ADSI,利用ASP来完成通用的对数据库把持... [打印本页]

作者: 只想知道    时间: 2015-1-16 23:22
标题: ASP网页编程之ADSI,利用ASP来完成通用的对数据库把持...
因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。还无法完全实现一些企业级的功能:完全的集群、负载均横。编程|把持|数据|数据库十分有代价的代码,上面的代码是利用ADSI的工具数据库观点体例成的,只需你了解了我在后面文章说的器材,上面的代码只不外是ADSI牛刀小试罢了只需有了上面这个思绪,今后不管是凑合甚么数据库,就是不晓得数据库的布局也不必惧怕了。
<%
---defineDSNnamesinarray
database_list=Array("dsn_1","dsn_2","dsn_3")
---enabledeletingtable?--Carefull!!
strEnableDeleteTable=False
----enddeclaration
----donotchangecodebelowthisline---------------------------------------------
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")
IfNotdsn_name=""Then
Setcon=Server.CreateObject("ADODB.Connection")
con.Open"DSN="&dsn_name
EndIf
table_name=Request("TableName")
IfRequest("AddNewTable")""Then
IfRequest("NewTableName")""Then
SQL="CREATETABLE"&Request("NewTableName")&"(fldAutoCounter)"
con.Execute(SQL)
EndIf
EndIf
IfRequest("AddNewField")""Then
Ifrequest("NewFieldName")""Then
SQL="ALTERTABLE"&table_name&"ADD"&request("NewFieldName")&""&request("NewFieldType")&"NULL"
con.Execute(SQL)
EndIf
EndIf
IfRequest("DeleteTable")""Then
SQL="DROPTABLE"&Request("TableName")
Con.Execute(SQL)
EndIf
IfRequest("DeleteColumn")""Then
ForEachitemInRequest("DeleteCol")
SQL="ALTERTABLE"&Request("TableName")&"DROP"&item
con.Execute(SQL)
Next
EndIf
-----filename--------------------------------------------------------
file=Request.ServerVariables("SCRIPT_NAME")
file=strReverse(file)
pos=Instr(file,"/")
file=Left(file,pos-1)
file=strReverse(file)
%>
<%
response.write"<!DOCTYPEHTMLPUBLIC""-//W3C//DTDHTML3.2Final//EN"">"
response.write"<HTML><HEAD><TITLE>DatabaseControl</TITLE></HEAD>"
response.write"<BODYbgcolor=""#FFFFFF""><br><br><center>"
------------------------------------------------------------
response.write"<formaction="""&file&"""method=post>"
response.write"<b><fontface=verdanasize=3color=""#008080""><u>TotalDatabaseControl</u></font></b><br><br>"
response.write"<fontface=Verdana,Arialsize=2><b>DatabaseName:</b></font>"
response.write"<selectname=""databasename"">"
Fori=0touBound(database_list)
Ifdatabase_list(i)=Request("databasename")Then
response.write"<optionvalue="""&database_list(i)&"""selected>"&database_list(i)
Else
response.write"<optionvalue="""&database_list(i)&""">"&database_list(i)
EndIf
Next
response.write"</select>"
response.write"<inputtype=submitname=GoDatabasevalue=go>"
response.write"<hr></form>"
-------------------------------------------------------------
response.write"<formaction="""&file&"?DatabaseName="&Server.URLEncode(dsn_name)&"""method=post>"
Ifdsn_name""Then
Settable=con.OpenSchema(20)
response.write"<fontface=Verdana,Arialsize=2>TableNamesin"&dsn_name&":</font><SELECTNAME=TableName>"
WhileNottable.EOF
tblName=table("Table_Name")
IfLeft(tblName,4)"MSys"ANDLeft(tblName,3)"sys"ANDLeft(tblName,4)"RTbl"Then
IftblName=table_nameThen
response.write"<OPTIONVALUE="""&tblName&"""selected>"&tblName
Else
response.write"<OPTIONVALUE="""&tblName&""">"&tblName
EndIf
EndIf
table.MoveNext
Wend
response.write"</SELECT>"
response.write"<INPUTtype=submitname=tablevalue=go>"
IfstrEnableDeleteTable=TrueThen
response.write"<inputtype=submitname=DeleteTablevalue=delete>"
EndIf
response.write"</form>"
response.write"<formaction="""&file&"?DatabaseName="&Server.URLEncode(dsn_name)&"""method=post>"
response.write"<table><tr>"
response.write"<tdcolspan=2><fontface=Verdana,Arialsize=2color=""#ff0000"">AddNewTableinto"&dsn_name&"</font></td>"
response.write"</tr><tr>"
response.write"<th><fontface=Verdana,Arialsize=2>TableName:</font></th>"
response.write"<td><inputtype=textname=NewTableName></td>"
response.write"</tr><tr>"
response.write"<tdcolspan=2align=center><inputtype=submitname=AddNewTablevalue=""AddNewTable""></td></tr></table>"
response.write"</form><hr>"
EndIf
Iftable_name""ANDRequest("DeleteTable")=""Then
response.write"<formaction="""&file&"?DatabaseName="&Server.URLEncode(dsn_name)&"&TableName="&table_name&"""method=post>"
response.write"<tableborder=2align=centercellpadding=2cellspacing=2>"
response.write"<tr>"
response.write"<thcolspan=4align=left><fontface=Verdana,Arialsize=3color=teal>"&table_name&"</font></th>"
response.write"</tr><tr><th><fontface=Verdana,Arialsize=2>FieldName</font></th>"
response.write"<th><fontface=Verdana,Arialsize=2>FieldSize</font></th>"
response.write"<th><fontface=Verdana,Arialsize=2>FieldDataType</font></th>"
response.write"<th><fontface=Verdana,Arialsize=2>Delete</font></th></tr>"
SQL="SELECT*FROM"&table_name
Setrs=con.Execute(SQL)
ForeachfldNameinrs.Fields
response.write"<tr>"
response.write"<td><fontface=Verdana,Arialsize=2color=""#000000"">"&fldName.Name&"</font></td>"
response.write"<td><fontface=Verdana,Arialsize=2color=""#000000"">"&fldName.DefinedSize&"</font></td>"
response.write"<td><fontface=Verdana,Arialsize=2color=""#000000"">"&GetTypeName(fldName.Type)&"</font></td>"
response.write"<tdalign=center><inputtype=checkboxname=DeleteColvalue="""&fldName.Name&"""></td>"
response.write"</tr>"
Next
response.write"<tr><tdcolspan=4align=center><inputtype=submitname=DeleteColumnvalue=""DeleteSelectedColumn""></td></tr>"
response.write"</table>"
response.write"<table><tr>"
response.write"<tdcolspan=2><fontface=Verdana,Arialsize=2color=""#ff0000"">AddNewFieldinto"&table_name&"</font></td>"
response.write"</tr><tr>"
response.write"<th><fontface=Verdana,Arialsize=2>FieldName:</font></th>"
response.write"<td><inputtype=textname=""NewFieldName""></td>"
response.write"</tr><tr>"
response.write"<th><fontface=Verdana,Arialsize=2>FieldType:</font></th>"
response.write"<td><selectname=""NewFieldType"">"
Fori=0touBound(field_value)
response.write"<optionvalue="""&field_value(i)&""">"&field_display(i)
Next
response.write"</select></td></tr>"
response.write"<tr><tdcolspan=2align=center><inputtype=submitname=AddNewFieldvalue=""AddNewField""></td></tr></table>"
response.write"</form>"
EndIf
response.write"</center></BODY></HTML>"
FunctionGetTypeName(id)
SelectCaseid
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"
CaseElse
GetTypeName=id
EndSelect
EndFunction
SubSelectDataType(it)
response.write"<SELECTNAME=EditColName>"
Fori=0toUBOUND(field_value)
Iffield_display(i)=itThen
response.write"<optionvalue="""&field_value(i)&"""selected>"&field_display(i)
Else
response.write"<optionvalue="""&field_value(i)&""">"&field_display(i)
EndIf
Next
response.write"</Select>"
EndSub
%>

想法是和程序员的想法不一样的.至于为什么.大家去想一想.跟心理学有关的
作者: 乐观    时间: 2015-1-20 09:35
他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。
作者: 若相依    时间: 2015-1-25 13:18
在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。
作者: 飘飘悠悠    时间: 2015-1-31 06:52
兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的
作者: 精灵巫婆    时间: 2015-2-6 18:07
另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件)
作者: 简单生活    时间: 2015-2-17 23:38
跟学别的语言一样,先掌握变量,流程控制语句(就是ifwhileselect)等,函数/过程,数组
作者: 活着的死人    时间: 2015-3-5 23:44
交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
作者: 小女巫    时间: 2015-3-12 16:36
我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。
作者: 不帅    时间: 2015-3-12 16:36
交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
作者: 海妖    时间: 2015-3-20 00:18
下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2