Dieser Artikel fasst die Methoden der Verwendung von ASP zum Importieren von Daten aus Excel in die Datenbank zusammen.
ASP implementiert den Datenimport in Excel in die Datenbank
- <%Antwort.CodePage = 65001%>
- <%Response.charset = utf-8%>
- <%
- Wenjian = Request.Form (SELECT)
- 'Holen Sie sich die Dateierweiterung
- ext = FileExec (Wenjian)
- 'Richter Dateierweiterung
- IFEXT <> xlSthen
- response.write (<Script> alert ('Der Dateityp ist falsch, bitte überprüfen Sie!'); window.location.href = 'index.html'; </script>)
- Antwort.end ()
- Endif
- Dimobjconn, objrs
- Dimstrcinn, Strsql
- setObjconn = server.createObject (adodb.Connection)
- setObjrs = server.createObject (adodb.recordset)
- excelfile = server.mappath (Wenjian)
- 'Für Excel2007
- strconn = provider = microsoft.ace.oledb.12.0; DataSource = & Excelfile &; & ExtendedProperties = Excel8.0;
- objconn.openstronn
- STRSQL = SELECT*aus [Sheet1 $]
- objrs.openstrsql, objconn, 1,1
- objrs.movefirst
- %> <!-#includeFile = conn.asp-> <%
- 'Schleife alle Datensätze in Excel
- whilenotobjrs.eof
- setrs = server.createObject (adodb.recordset)
- 'Abfrageanweisung
- SQL_S = SELECT*FromCeshiWhereelName = '& Objrs (0) &' andold = '& Objrs (1) &' undSex = '& Objrs (2) &' und guojia = '& objrs (3) &' undqq = '& Objrs (4) &' '' '' '' ''
- rs.opensql_s, conn, 1,1
- „Geben Sie die doppelten Daten nicht ein
- ifrs.eofthen
- 'Anweisung einfügen
- '**** Der erste Artikel in Excel wird nicht eingegeben ****
- SQL = InsertIntoCeshi (Lname, Old, Sex, Guojia, QQ) Werte ('& Objrs (0) &', '& Objrs (1) &', '& Objrs (2) &', '& Objrs (3) &', '& Objrs (3) & ',' & Objrs (4) & ')
- 'Insertion ausführen
- Conn.Execute (SQL)
- Endif
- objrs.Movenext
- rs.close
- setrs = nichts
- Wend
- 'Es ist Zeit, wieder zu schließen
- conn.close
- setConn = nichts
- objrs.close
- objconn.close
- setObjrs = nichts
- setObjconn = nichts
- response.write (<Script> alert ('erfolgreich importieren'); window.location.href = 'index.html'; </script>)
- Antwort.end ()
- FunktionsFileexec (Dateiname)
- FileExec = Mid (Dateiname, Instrument (Dateiname,.)+1, Len (Dateiname) -instr (Dateiname ,.)))
- Endfunktion
- %>
Teilen Sie eine weitere vereinfachte Version des Codes
- Wenjian = Request.Form (Boden)
- Fileext = Mid (Wenjian, Instrrev (Wenjian,.)+1)
- IFLCase (FileEXT) <> xlSthen
- response.write <Script> alert ('Das Dateiformat ist falsch. Bitte laden Sie die Excel -Datei hoch'); window.location.href = 'updatefloor.asp'; </script>
- Antwort.end
- Endif
- setConne = server.createObject (adodb.Connection)
- connstre = provider = microsoft.jet.oledb.4.0; dataSource = & server.mappath (& wenjian &) &; extendedProperties = 'excel8.0; hdr = yes; imex = 1';
- conne.openconnstre
- Sqle = Select*aus [Sheet1 $]
- SetRse = server.createObject (adodb.recordset)
- rse.opensqle, conne, 1,1
- 'verifizieren
- Hang = 2
- dowhilenottrse.eof
- 'Der Name kann nicht leer sein
- iftrim (rse (0)) <> Dann
- anders
- Mess = Der Name der & Hang & Zeile ist leer, bitte überprüfen Sie!
- response.write <Script> alert ('& mess &'). window.location.href = 'updatefloor.asp' </script>
- Antwort.end ()
- Endif
- RSE.Movenext
- hängen = hängen+1
- Schleife
- rse.movefirst
- dowhilenottrse.eof
- setRst = server.createObject (adodb.recordset)
- SQLT = SELECT*FromSellman
- rst.opensqlt, conn, 1,3
- RSST.ADDNEW ()
- RST (CompanyName) = C2 (RSE (0))
- RST (CompanyInfo) = C2 (RSE (1))
- RST (Adresse) = C2 (RSE (2))
- RST (Tel) = C2 (RSE (3)) && C2 (RSE (7))
- RST (Fax) = C2 (RSE (4))
- RST (LinkMan) = C2 (RSE (5))
- RST (Homepage) = C2 (RSE (8))
- RST (E -Mail) = C2 (RSE (6))
- rst.update ()
- RSST.CLOSE
- setrst = nichts
- RSE.Movenext
- Schleife
- rse.close
- settrse = nichts
- response.write <Script> alert ('erfolgreich importiert!'); location.href = 'updatefloor.asp'; </script>
Tatsächlich öffnen Sie es einfach wie eine Zugriffsdatenbank, öffnen Sie die Excel -Datei, lesen und schreiben Sie sie, um sie auf den SQL -Server zu schreiben, und ändern Sie den Schreibprozess und es wird sein.
Schauen Sie sich den Code an:
- Dimconn
- Dimconn2
- setConn = createObject (adodb.Connection)
- conn.openProvider = microsoft.jet.oledb.4.0; JetoledB: Databasepassword =; DataSource = C:/Book1.mdb
- setConn2 = createObject (adodb.Connection)
- conn2.openProvider = microsoft.jet.oledb.4.0; JetoledB: Databasepassword =; ExtendedProperties = Excel5.0; DataSource = C:/Book1.xls
- SQL = SELECT*von [Sheet1 $]
- setrs = conn2.execute (SQL)
- whilenotrs.eof
- SQL = InsertOxxx ([A], [B], [C], [D]) Werte ('& FixSQL (RS (0)) &', '& FixSQL (Rs (1)) &', '& Fixsql (RS (2) )) & ',' & FixSQL (Rs (3)) & ')
- Conn.Execute (SQL)
- Rs.Movenext
- Wend
- conn.close
- setConn = nichts
- conn2.close
- setConn2 = nichts
- functionFixSQL (STR)
- Dimnewstr
- Newsstr = str
- Ifisnull (Newstr) dann
- Newsstr =
- anders
- Newsstr = Ersetzen (Newstr, ',' ')
- Endif
- FixSQL = NewStr
- Endfunktion