Forum de discussion
Forum « Programmation ASP » (archives)
Peupler une table Acces a partir de fichier Texte
Envoyé: 4 mars 2004, 9h41 par cg37
existe-il une methode moins gourmande pour remplir une table sous access a partir d'un fichier texte que le script ci-dessous.
<%
Dim Filename
Filename = "test.txt"
Dim FSO
set FSO = server.createObject("Scripting.FileSystemObject")
Dim Filepath
Filepath = Server.MapPath(Filename)
if FSO.FileExists(Filepath) Then
Dim file
set file = FSO.GetFile(Filepath)
Dim TextStream
Set TextStream = file.OpenAsTextStream(1,-2)
Dim Line
Dim ColumnNameArray
Line = TextStream.readline
ColumnNameArray = Split(Line,vbTab)
TotalColumns = UBound(ColumnNameArray)
Line = ""
Dim RowDataArray(5000,5000), TempArray
Dim Count1,Count2
Count1 = 0
Do While Not TextStream.AtEndOfStream
ReDim TempArray(TotalColumns)
Line = TextStream.readline
TempArray = Split(Line,vbTab)
for Count2 = 0 to TotalColumns
RowDataArray(Count1,Count2) = TempArray(Count2)
next
Count1 = Count1 + 1
Loop
Set TextStream = nothing
strDBPath = Server.MapPath("AccessFile.mdb")
connSTR = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & ";"
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Const adCmdText = &H0001
for i = 0 to TotalColumns
for i = 0 to Count1-1
strSQL = "SELECT * FROM Table WHERE 1=1"
Set rsAdd = Server.CreateObject("ADODB.Recordset")
rsAdd.Open strSQL, connSTR, adOpenKeyset, adLockOptimistic, adCmdText
rsAdd.AddNew
for j = 0 to TotalColumns
rsAdd.Fields(ColumnNameArray(j)).Value = RowDataArray(i,j)
next
rsAdd.Update
rsAdd.Close
Set rsAdd = Nothing
next
%>
Réponses
|