DevTrain

Autor: Bernhard Elbl

Daten in ein CSV-File exportieren

CSV-Files können einfach in fast jede Datenbank importiert/exportiert werden. Mit einer einfachen ASP-Prozedur kann man den Vorgang automatisieren..
Was ist ein CSV-File?
Das CSV-Datenformat entspricht einem Text-File mit kommagetrennten Werten. Die Werte sind jeweils innerhalb von Anführungszeichen. Die erste Zeile eines CSV-Files beginnt mit den Spalten-Namen.
Der Aufbau eines CSV-Files im Beispiel...

"Vorname","Nachname","Firma"
"Bernhard","Elbl","ppedv AG"
...


Das ist die Prozedur "ExportToCSV"
DBToCSV.asp

<%@ Language=VBScript %>
<%
Sub ExportToCSV(ConnString,SQLString,FileName)
 Set Conn = Server.CreateObject("ADODB.Connection")
 Set RS = Server.CreateObject("ADODB.Recordset")
 Set oFSO = Server.CreateObject("Scripting.FileSystemObject")
 Conn.Open ConnString
 RS.Open SQLString, Conn
 AnzahlSpalten = RS.Fields.Count - 1
 Set oTS = oFSO.CreateTextFile(FileName, True)
 i = 0
 strWertZeile = ""
 For i = 0 To AnzahlSpalten
  '--- Um einen String innerhalb eines Strings dazustellen... """"
  strWertZeile = strWertZeile & """" & RS.Fields(i).Name & ""","
 Next
 oTS.WriteLine strWertZeile
 Do Until RS.EOF
  i = 0
  strWertZeile = ""
  For i = 0 To AnzahlSpalten
   strWertZeile = strWertZeile & """" & RS.Fields(i) & ""","
  Next
  RS.MoveNext
  
     strWertZeile = Left(strWertZeile, Len(strWertZeile)- 1)
     oTS.WriteLine strWertZeile
 Loop
        oTS.Close
 Set RS = Nothing
 Set Conn = Nothing
 Set oFSO = Nothing
End Sub
%>



Der Aufruf der Sub erfolgt mit Parameterübergabe und zwar:
Connection-String, SQL-String, und kompletter Dateiname
aufrufende.asp
<%@ Language=VBScript %>
<!--#include file="DBToCSV.asp"-->
<%
strConn = Application("conn1_ConnectionString")
strSQL = "SELECT * FROM Adressen"
ExportToCSV strConn, strSQL, Server.MapPath("./") & "adresses.csv"
%>


 


Erfasst am: 30.07.2001 - Artikel-URL: http://www.devtrain.de/news.aspx?artnr=506
© Copyright 2003 ppedv AG - http://www.ppedv.de