Use ASP to Turn Your Database into an XML Document in an Instant
Everyone is getting into XML but most of us have our data in Access or SQL databases. You can dump your data to an XML file in an instant by creating a recordset and writing its contents to a flat file. The only trick is to include the formatting that XML expects. Here's an example of code that creates an XML file from an Access database. You'll need to replace your own connection string and data fields. Also, watch for bad wordwrapping and carriage returns in the connection string provided here.
<%
dotable("SELECT * FROM cpdocs10 ORDER BY Title")
sub dotable(query)
Set OBJdbConnection = Server.CreateObject("adodb.Connection")
connstr = "Provider=MSDASQL.1;Persist Security Info=False; User ID=admin;Connect Timeout=15;Extended Properties=""DBQ=c:\inetpub\wwwroot\kjc350\cpinfonet.mdb; DefaultDir=c:\inetpub\wwwroot\kjc350;Driver={Microsoft Access Driver (*.mdb)}; DriverId=25;FIL=MS Access;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5; SafeTransactions=0;Threads=3;UID=admin;UserCommitSync=Yes;"";Locale Identifier=1033; User Id=admin;"
OBJdbConnection.Open connstr
' Construct a simple query to retrieve the data
sqlquery = query
Set rsdoc = OBJdbConnection.execute(SQLQuery)
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("c:\documents.xml", True)
a.WriteLine("<?xml version=""1.0""?>")
a.WriteLine("<DOCUMENTS>")
while not rsdoc.eof
a.WriteLine(space(3) & "<DOCUMENT>")
a.WriteLine(space(6) & "<TITLE>" & rsdoc("Title") & "</TITLE>")
a.WriteLine(space(6) & "<PART>" & rsdoc("Part") & "</PART>")
a.WriteLine(space(6) & "<FILESIZE>" & rsdoc("FileSize") & "</FILESIZE>")
a.WriteLine(space(6) & "<DATE>" & rsdoc("Date") & "</DATE>")
a.WriteLine(space(6) & "<FILENAME>" & rsdoc("Filename") & "</FILENAME>")
a.WriteLine(space(3) & "</DOCUMENT>")
rsdoc.movenext
wend
a.WriteLine("</DOCUMENTS>")
a.Close
set a=Nothing
set fs=Nothing
Set rsdoc=Nothing
Set OBJdbConnection=Nothing
end sub
%>
Done!
</body>
</html>
It's quick, easy and you get access to all the articles on DevX.
This registration/login is to allow you to read articles on devx.com. Already a member?
To become a member of DevX.com create your Member Profile by completing the form below. Membership is free!
If you have a hot tip and we publish it, we'll pay you. However, due to accounting overhead we no longer pay $10 for a single tip submission. You must accumulate 10 acceptable tips to receive payment. Be sure to include a clear explanation of what the technique does and why it's useful. If it includes code, limit it to 20 lines if possible. Submit your tip here.