<%@ Language=VBScript %>
<HTML>
<HEAD>
<%
function TypeStr(fdType)
select case fdType
case 0
TypeStr
= "adEmpty"
case 16
TypeStr
= "adTinyInt"
case 2
TypeStr
= "adSmallInt"
case 3
TypeStr
= "adInteger"
case 20
TypeStr
= "adBigInt"
case 17
TypeStr
= "adUnsignedTinyInt"
case 18
TypeStr
= "adUnsignedSmallInt"
case 19
TypeStr
= "adUnsignedInt"
case 21
TypeStr
= "adUnsignedBigInt"
case 4
TypeStr
= "adSingle"
case 5
TypeStr
= "adDouble"
case 6
TypeStr
= "adCurrency"
case 14
TypeStr
= "adDecimal"
case 131
TypeStr
= "adNumeric"
case 11
TypeStr
= "adBoolean"
case 10
TypeStr
= "adError"
case 132
TypeStr
= "adUserDefined"
case 12
TypeStr
= "adVariant"
case 9
TypeStr
= "adIDispatch"
case 13
TypeStr
= "adIUnknown"
case 72
TypeStr
= "adGUID"
case 7
TypeStr
= "adDate"
case 133
TypeStr
= "adDBDate"
case 134
TypeStr
= "adDBTime"
case 135
TypeStr
= "adDBTimeStamp"
case 8
TypeStr
= "adBSTR"
case 129
TypeStr
= "adChar"
case 200
TypeStr
= "adVarChar"
case 201
TypeStr
= "adLongVarChar"
case 130
TypeStr
= "adWChar"
case 202
TypeStr
= "adVarWChar"
case 203
TypeStr
= "adLongVarWCha"
case 128
TypeStr
= "adBinary"
case 204
TypeStr
= "adVarBinary"
case 205
TypeStr
= "adLongVarBinary"
end select
end function
%>
</HEAD>
<BODY bgcolor=silver>
<%
if Request.Form("drvtxt").Count <> 0
then
drv = Request.Form("drvtxt")
url = Request.Form("urltxt")
uid = Request.Form("uidtxt")
pwd = Request.Form("pwdtxt")
dim
DrvArry(15)
DrvArry(0) = "--Please select
a driver--"
DrvArry(1) = "sun.jdbc.odbc.JdbcOdbcDriver"
DrvArry(2) = "sun.jdbc.odbc.JdbcOdbcDriver"
DrvArry(3) = "oracle.jdbc.driver.OracleDriver"
DrvArry(4) = "com.informix.jdbc.IfxDriver"
DrvArry(5) = "twz1.jdbc.mysql.jdbcMysqlDriver"
DrvArry(6) = "org.gjt.mm.mysql.Driver"
DrvArry(7) = "com.sybase.jdbc2.jdbc.SybDriver"
DrvArry(8) = "COM.cloudscape.core.JDBCDriver"
DrvArry(9) = "postgresql.Driver"
DrvArry(10) = "intersolv.jdbc.sequelink.SequeLinkDriver"
DrvArry(11) = "intersolv.jdbc.sequelink.SequeLinkDriver"
DrvArry(12) = "intersolv.jdbc.sequelink.SequeLinkDriver"
DrvArry(13) = "intersolv.jdbc.sequelink.SequeLinkDriver"
DrvArry(14) = "intersolv.jdbc.sequelink.SequeLinkDriver"
DrvArry(15) = "openlink.jdbc2.Driver"
select
case drv
case 1, 14:
dbms
= "Access"
case 2, 13, 15:
dbms
= "SQLServer"
case 3, 10:
dbms
= "Oracle"
case 4, 11:
dbms
= "Informix"
case 5, 6:
dbms
= "MySQL"
case 7, 12:
dbms
= "Sybase"
case 8:
dbms
= "Cloudscape"
case 9:
dbms
= "Postgres"
case else
dbms
= ""
end select
strCnn
= "Driver=" & DrvArry(drv) & ";URL=" &
url & ";UID=" & uid & ";PWD=" & pwd
& ";"
Set conn = Server.CreateObject("ADODB.CONNECTION")
conn.Open strCnn
set
Session("tbsRS") = conn.openschema(20)
selectIndex = -1
else
dbms = Request.QueryString("dbms")
selectIndex = CInt( Request.Form("Listtable")
)
tbName = Request.QueryString("tbName")
end if
set RS = Session("tbsRS")
RS.MoveFirst
%>
<font size="4" face="Arial, Helvetica">
<b>Database Base Information Sample</b></font><br>
<hr size="1" color="#000000">
<form name=form1 method=post>
<TABLE><TR>
<TD><B>Tables:</B><BR>
<SELECT name=Listtable width=200 style="width:200" size=18
onChange="Listtable_onChange()" >
<%
i = 0
while not RS.eof
if trim(RS("TABLE_TYPE").Value)
= "TABLE" then
if dbms = "Oracle"
then
if
RS(1).Value = "HALCYON" then
if
selectIndex = i then
tbName
= RS("TABLE_NAME").Value
%>
<OPTION value="<%=i%>"
selected><%=RS("TABLE_NAME").Value%>
<%
else
%>
<OPTION value="<%=i%>"><%=RS("TABLE_NAME").Value%>
<%
end
if
i
= i + 1
end
if
else
if
selectIndex = i then
%>
<OPTION value="<%=i%>"
selected><%=RS("TABLE_NAME").Value%>
<%
else
%>
<OPTION value="<%=i%>"><%=RS("TABLE_NAME").Value%>
<%
end
if
i
= i + 1
end if
end if
RS.MoveNext
wend
%>
</SELECT>
</TD>
<TD valign=top>
<TABLE><TR>
<%
if selectIndex > -1 then
set REC = RS.ActiveConnection.Execute("select
* from " & tbName)
fdCnt = REC.Fields.Count
%>
<TD><B>Field Name:</B><SELECT name=listName size=11
WIDTH=160 style="WIDTH: 160">
<%
for i = 0 to fdCnt - 1
%>
<OPTION><%=REC.Fields(i).Name%></OPTION>
<%
next
%>
</SELECT></TD>
<TD><B>Field Type:</B><SELECT name=listType size=11
WIDTH=160 style="WIDTH: 160">
<%
for i = 0 to fdCnt - 1
%>
<OPTION><%=TypeStr( REC.Fields(i).Type
)%></OPTION>
<%
next
%>
</SELECT></TD>
<TD><B>Field Size:</B><SELECT name=listSize size=11
WIDTH=160 style="WIDTH: 160">
<%
for i = 0 to fdCnt - 1
%>
<OPTION><%=REC.Fields(i).DefinedSize%></OPTION>
<%
next
%>
</SELECT></TD>
<%
REC.close
else
%>
<TD><B>Field Name:</B><BR><SELECT name=listName
size=11 WIDTH=160 style="WIDTH: 160">
</SELECT></TD>
<TD><B>Field Type:</B><BR><SELECT name=listType
size=11 WIDTH=160 style="WIDTH: 160">
</SELECT></TD>
<TD><B>Field Size:</B><BR><SELECT name=listSize
size=11 WIDTH=160 style="WIDTH: 160">
</SELECT></TD>
<%
end if
%>
</TR></TABLE>
<TABLE><TR>
<TD><B>Indexes:<B><BR>
<SELECT name=listIndex size=5 width=320 style="WIDTH: 320">
<%
arr4 = Array(null, null, tbName, null)
set REC = RS.ActiveConnection.OpenSchema(20, arr4)
schem = REC.fields.item(0)
cotag = REC.fields.item(1)
REC.close
temp = ""
if selectIndex > -1 then
arr5 = Array(schem, cotag, null, null,
tbName)
set REC = RS.ActiveConnection.OpenSchema(12,
arr5)
while not REC.Eof
set idxName = REC.Fields("INDEX_NAME")
if not isEmpty(idxName.Value)
and temp <> idxName.Value then
%>
<OPTION><%=idxName.Value%>
<%
temp
= idxName.Value
end if
REC.MoveNext
wend
REC.close
end if
%>
</SELECT></TD>
</TR></TABLE>
</TD>
</TR></TABLE>
</form>
<hr size="1" color="#000000">
<EM>This is <B><%=dbms%></B> database.</EM>
<font size="+1">
<center><a href="default.asp">
Return Home</a></center></font>
</BODY>
</HTML>
|