<>
<%
'*********************************
'*classname:ADOXDBOPR
'*制作人:刘晓逸
'*作用:用adox进行数据库的操作
'*版本:1.0
'*www.jb51.net 查字典教程网
'**********************************
ClassADOXDBOPR
dimobjADOX
PrivateSubClass_Initialize
SetobjADOX=Server.CreateObject("ADOX.Catalog")
endsub
PublicPropertyletConnection(objCONN)
objADOX.ActiveConnection=objCONN
EndProperty
publicfunctionarrTName
dimarrTNames()
dimi:i=1
foreachobjtabinobjADOX.tables
ifobjtab.type="TABLE"then
redimPreservearrTNames(i)
arrTNames(i-1)=objtab.name
i=i+1
endif
next
arrTName=arrTNames
endfunction
publicfunctionarrfinfo(szTName)
dimarrf()
SetobjTAdox=objADOX.tables.item(szTName)
fori=0toobjTAdox.columns.count-1
SetdicInfo=Server.CreateObject("Scripting.Dictionary")
redimpreservearrf(i+1)
dicInfo.add"name",objTAdox.columns.Item(i).name
dicInfo.add"type",type_int2str(objTAdox.columns.Item(i).type)
Setarrf(i)=dicInfo
SetdicInfo=nothing
next
arrfinfo=arrf
endfunction
publicsubdel_table(szTName)
objADOX.tables.deleteszTName
EndSub
publicsubadd_table(szTName)
Setobj_tab=Server.CreateObject("ADOX.Table")
obj_tab.Name=szTName
Setobj_tab.ParentCatalog=objADOX
objADOX.tables.Appendobj_tab
Setobj_tab=nothing
EndSub
publicsubdelColumns(arrColumns,szTName)
Setobj_tab=objADOX.tables.item(szTName)
ifisarray(arrColumns)then
fori=0toubound(arrColumns)
obj_tab.columns.deletearrColumns(i)
next
else
obj_tab.columns.deletearrColumns
endif
endsub
publicsubadd_columns(arrColumns,szTName)
SetobjTab=objADOX.tables.item(szTName)
fori=0toubound(arrColumns)
objTab.columns.appendarrColumns(i,0),arrColumns(i,1),arrColumns(i,2)
next
endsub
functiontype_int2str(int_value)
selectcaseint_value
case3:
type_int2str="数字"
case202:
type_int2str="文本"
caseelse:
type_int2str=int_value
endselect
endfunction
PrivateSubClass_Terminate
SetobjADOX=nothing
EndSub
Endclass
%>