§Caio Ragazzi,
chiedo a voi divoratori di sql....dalmio piccolo ho sempre saputohe l'istruziione insert to è molto più performante di addnew.
Ho realizzato del codice per importare un file txt in un db access, utilizzando inser to ci metto 30 s,mentre con addnew 3 s la cosa mi risulta strana.
Sono abituato a non usare mai addnew visto che non è sql puro e non è compatibile con altri db.
vi posto il codice...grazie per l'aiuto...
addnew
Codice PHP:
<%
sTableDb = "catastosog"
Dim strCampi1, sTableDb
set rsC = Server.CreateObject("ADODB.Recordset") ' estraggo i campi
Set RsC = Conn.OpenSchema(4, Array(Empty, Empty, "" & sTableDb ))
do while not rsC.eof
strCampiDB=strCampiDB &rsC("COLUMN_NAME") &";" ' metto i campi in un array con lo spazio per split
aa=aa+1
'response.Write aa-1&"."&rsC("COLUMN_NAME") &"
"
rsC.moveNext
loop
rsC.Close
Set rsC = Nothing
Dim arr_strCampiDB_max,arr_strCampi_minDB,arr_strCampiDB
arr_strCampiDB = split_stringa1(strCampiDB)
arr_strCampiDB_min = lBound(arr_strCampiDB)
arr_strCampiDB_max = uBound(arr_strCampiDB)
'response.End()
%>
<table width="53%" border="0" align="center">
<tr>
<td height="21" align="left" class="titolocol">SOGGETTI</td>
</tr>
<tr>
<td width="96%" height="20" align="left" class="titolotab">Step 1 to 3 tabella <%= sTableDb %> svuotata</td>
<td width="4%" align="left"></td>
</tr>
</table>
<% response.Flush() %>
<% sQuery = "DELETE * FROM " & sTableDb
conn.Execute(sQuery)
Set fso = CreateObject("Scripting.FileSystemObject")
Set txt = fso.OpenTextFile(sPath &"\"& filesog)
Set rss=server.CreateObject("ADODB.Recordset")
rss.Open sTableDb,conn,3,3
With txt
While not .AtEndOfStream
r = r+1
aCampo = Split(txt.ReadLine(),"|")
rss.Addnew()
if aCampo(3)="P" then
rss(arr_strCampiDB(0))=aCampo(0)
rss(arr_strCampiDB(1))=aCampo(9)
rss(arr_strCampiDB(2))=aCampo(4)
rss(arr_strCampiDB(3))=aCampo(8)
rss(arr_strCampiDB(4))=aCampo(4)&" "&aCampo(5)
rss(arr_strCampiDB(6))=aCampo(2)
rss(arr_strCampiDB(7))=aCampo(8)
rss(arr_strCampiDB(8))=aCampo(5)
rss(arr_strCampiDB(9))=aCampo(6)
rss(arr_strCampiDB(10))=aCampo(1)
rss(arr_strCampiDB(11))=aCampo(3)
else
rss(arr_strCampiDB(0))=aCampo(0)
rss(arr_strCampiDB(1))=aCampo(6)
rss(arr_strCampiDB(4))=aCampo(4)
rss(arr_strCampiDB(11))=aCampo(3)
rss(arr_strCampiDB(6))=aCampo(2)
rss(arr_strCampiDB(7))=aCampo(5)
end if
rss.Update()
'response.End()
Wend
End With
rss.close()
Set txt = Nothing
Set fso = Nothing
response.End()
%>
insert to
Codice PHP:
<%
Set fso = CreateObject("Scripting.FileSystemObject")
Set txt = fso.OpenTextFile(sPath &"\"& filesog)
Set cmd = CreateObject("ADODB.Command")
With cmd
.CommandText = "PARAMETERS pC1 Text, pC2 Text, pC3 Text, pC4 Text, pC5 Text, pC6 Text, pC7 Text, pC8 Text, pC9 Text, pC10 Text, pC11 Text; INSERT INTO "& sTableDb &" (codice_amministrativo, sezione, identificativo_immobile, tipo_persona , cognome, nome , sesso, data_di_nascita , luogo_di_nascita , codice_fiscale , generalita) VALUES(pC1, pC2, pC3, pC4, pC5, pC6, pC7, pC8, pC9, pC10, pC11)"
.CommandType = 1
Set .ActiveConnection = conn
.Parameters.Refresh
End With
r = 0
With txt
While not .AtEndOfStream
r = r+1
aCampo = Split(txt.ReadLine(),"|")
With cmd
if aCampo(3)="P" then
.Parameters("pC1").Value = aCampo(0)
.Parameters("pC2").Value = aCampo(1)
.Parameters("pC3").Value = aCampo(2)
.Parameters("pC4").Value = aCampo(3)
.Parameters("pC5").Value = aCampo(4)
.Parameters("pC6").Value = aCampo(5)
.Parameters("pC7").Value = aCampo(6)
.Parameters("pC8").Value = aCampo(7)
.Parameters("pC9").Value = aCampo(8)
.Parameters("pC10").Value = aCampo(9)
.Parameters("pC11").Value = aCampo(4)&" "&aCampo(5)
elseif aCampo(3)="G" then
.Parameters("pC1").Value = aCampo(0)
.Parameters("pC2").Value = aCampo(1)
.Parameters("pC3").Value = aCampo(2)
.Parameters("pC4").Value = aCampo(3)
.Parameters("pC11").Value = aCampo(4)
.Parameters("pC8").Value = aCampo(5)
.Parameters("pC7").Value = ""
.Parameters("pC5").Value = ""
.Parameters("pC6").Value = ""
.Parameters("pC9").Value = ""
.Parameters("pC10").Value = aCampo(6)
end if
.Execute
End With
Wend
.Close
End With
Set txt = Nothing
Set fso = Nothing
Set cmd = Nothing
%>