<%
dim sql,rs
dim Table_name
<!--取得数据表名称-->
Table_name=request.QueryString("Table_name")
Set rs= Server.CreateObject("ADODB.Recordset")
Const adSchemaTables = 20
adSchemaColumns = 4
strConn="DBQ="+server.mappath("db.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.open strConn
Set rstSchema = oConn.OpenSchema(adSchemaColumns)
Set rsttable = oConn.OpenSchema(adSchemaTables)
i=0
%><?xml version="1.0" encoding="gb2312"?>
<Table>
<TableInfo>
<TableName><%=Table_name%></TableName>
<FieldInfoArray>
<%
//生成XML文件头
Do Until rstSchema.EOF
if rstSchema("Table_name") = Table_name then
if rstschema("column_Name")<>"ORowInfo" or rstschema("column_Name")<>"osysMachineID" then
%> <FieldInfo>
<FieldName><%=rstschema("column_Name")%></FieldName> <ColName><%=rstschema("column_Name")%></ColName>
<%select case rstschema("data_type")
case "130"
if rstschema("CHARACTER_MAXIMUM_LENGTH") = 1073741823 then%> <DataType>12</DataType>
<CellType>0</CellType>
<%else%> <DataType>10</DataType>
<CellType>0</CellType>
<%end if
case 135%> <DataType>23</DataType>
<CellType>3</CellType>
<%case 3%> <DataType>7</DataType>
<CellType>0</CellType>
<%case 11%> <DataType>3</DataType>
<CellType>2</CellType>
<%case 131%> <DataType>10</DataType>
<CellType>0</CellType>
<%case 5%> <DataType>7</DataType>
<CellType>0</CellType>
<%case else%> <DataType>10</DataType>
<CellType>0</CellType>
<%end select%> </FieldInfo>
<%end if
end if
rstSchema.MoveNextLoop
%> </FieldInfoArray>
</TableInfo>
<Rows>
//生成XML文件体
<%
sql="select * from "&Table_name
rs.open sql,strConn,1,1
Do while Not rs.eof
%> <Row>
<%
for k=0 to rs.fields.count-1
if rs(k).name<>"ORowInfo" or rs(k).name<>"osysMachineID" then
%> <<%=rs(k).name%>><%=rs(k)%></<%=rs(k).name%>>
<%
end if
next
%> </Row>
<%
rs.movenext
loop
rs.close
%> </Rows>
</Table>