Heim  >  Artikel  >  Software-Tutorial  >  Quellcode-Implementierung des Excel-Imports in SQLServer

Quellcode-Implementierung des Excel-Imports in SQLServer

WBOY
WBOYnach vorne
2024-01-23 21:45:10953Durchsuche

Ein Quellcode, der Excel in SQL Server importieren kann

Geben Sie einen Code zum direkten Hochladen von Daten auf SqlServer in Excel:

Kann entsprechend geändert werden,

FormName ist die Tabelle in der Datenbank,

DBString ist das Datenbankverbindungsfeld,

Sub UploadData()

If FormName = "" Then Exit Sub

Dimmen Sie eine neuwertige ADODB.Connection

Dim b As New ADODB.Recordset

a.DBString öffnen

RowCount = Application.CountA(Rows("1:1"))

Für i = 2 To application.counta(range("a:a"))

sql = ""

Setze b = Nichts

Für j = 1 To RowCount - 1

sql = sql & "'" & Cells(i, j) & "', "

Weiter

sql = "insert into " & FormName & "values(" & sql & "'" & Cells(i, RowCount) & "')"

b.Open Source:=sql, ActiveConnection:=a

Weiter

MsgBox „OK!“

End Sub

Es gibt verschiedene Methoden, finden Sie einfach eine passende,

Um Ihre Aufgabe abzuschließen, müssen Sie die Verbindungseigenschaften der Datenbank verstehen, die entsprechend Ihrer tatsächlichen Situation geändert werden können.

Provider=SQLOLEDB.1;Persist Security Info=False;Benutzer-ID=md-inspection;PWD=mdOL20!31)25;Initial Catalog=Online_Inspection;Data Source=Cduvmdb01,1433

Darüber hinaus müssen relevante Verweise auf der VBE-Seite hinzugefügt werden:

Quellcode-Implementierung des Excel-Imports in SQLServer

Ein Quellcode für C Excel zum Importieren der Datenbank

Umgebung: c#.2005+Access+ Sql

1. Fügen Sie die DataTable in die Datenbank ein

public static void DataTableToDB()

{

string _strExcelFileName = @"D:example.xls";

DataTable dtExcel = ExcelToDataTable(_strExcelFileName,"Sheet1");

for (int i = 0; i

{

InsertDataToAccess(dtExcel.Rows[i][0].ToString(), float.Parse(dtExcel.Rows[i][1].ToString()));

}

}

2. Excel-Daten in DataTable einlesen

public static DataTable ExcelToDataTable(string strExcelFileName, string strSheetName)

{

string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source="" + strExcelFileName + ";"" +"Extended Properties=Excel 5.0;";

string strExcel = string.Format("select * from [{0}$]", strSheetName);

DataSet ds = new DataSet();

using (OleDbConnection conn = new OleDbConnection(strConn))

{

conn.Open();

OleDbDataAdapter-Adapter = neuer OleDbDataAdapter(strExcel, strConn);

adapter.Fill(ds, strSheetName);

conn.Close();

}

return ds.Tables[strSheetName];

}

3. Daten in die Access-Datenbanktabelle einfügen

public static void InsertDataToAccess(string _strPara,float _fPara)

{

OleDbConnection oleDbConn = new OleDbConnection();

oleDbConn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:ExcelData.mdb;User Id=admin;Password=;";

oleDbConn.Open();

string strInsertString = "INSERT INTO tb_excelData (strCollumn1,fCollumn2) VALUES (@strCollumn1,@fCollumn2)";

OleDbCommand oComm = new OleDbCommand(strInsertString, oleDbConn);

oComm.Parameters.Add("@strCollumn1", OleDbType.Char , 50);

oComm.Parameters["@strCollumn1"].Value = _strPara;

oComm.Parameters.Add("@fCollumn2", OleDbType.Double);

oComm.Parameters["@fCollumn2"].Value = _fPara;

ocomm.ExecuteNonQuery();

oleDbConn.Close();

}

So importieren Sie mehrere Excel-Datendateien stapelweise in den Quellcode einer anderen Excel-Dateitabelle

Der Code lautet wie folgt:

Unterdateizusammenführung()

Dimmen Sie wb als Arbeitsmappe, sh als Arbeitsblatt, pT als Zeichenfolge, wb2 als Arbeitsmappe, t

t = Timer

'Erkennen Sie, ob eine irrelevante Arbeitsmappe geöffnet ist

Wenn Arbeitsmappen.Anzahl > 1, dann

MsgBox „Andere geöffnete Arbeitsmappen schließen“

Exit Sub

Ende wenn

'Geben Sie den Ordner an, in dem sich die Datei befindet

Mit Application.FileDialog(msoFileDialogFolderPicker)

.Zeigen

If .SelectedItems.Count = 0 Then Exit Sub 'Wenn Sie Abbrechen drücken oder X das Dialogfeld schließt, beenden Sie es direkt

pT = .SelectedItems(1)

Ende mit

Application.ScreenUpdating = False 'Bildschirmaktualisierung deaktivieren

Application.DisplayAlerts = False 'Dialogfeld schließen

'Erstellen Sie ein neues Arbeitsblatt mit dem Namen New.xls

Setze wb = Workbooks.Add

shJS = wb.Worksheets.Count

fn = Dir(pT & "*.xls")

Während fn ""

If fn = wb.Name Then GoTo gg

i = i + 1

Wenn ich > shJS dann

Setzen Sie sh = wb.Worksheets.Add(After:=wb.Worksheets(wb.Worksheets.Count))

Ende wenn

Setzen Sie wb2 = Workbooks.Open(fn, ReadOnly = True)

wb2.Worksheets(1).Cells.Copy wb.Worksheets(i).Cells

wb.Worksheets(i).Name = Left(fn, Len(fn) - 4)

wb2.Schließen

gg:

fn = Dir

Wend

wb.SaveAs pT & „new.xls“

wb.Schließen

Application.ScreenUpdating = True 'Bildschirmaktualisierung aktivieren

Application.DisplayAlerts = True 'Dialogfeld öffnen

MsgBox „Gemeinsame Zeit“ & Timer – t & „Sekunden. Neue Datei new.xls generieren“

End Sub

Vollständiger Code zum Importieren von Daten von Excel nach Delphi

Tabelle A in der Datenbank, die Felder sind A1, A2, A3, a4, a5

Tabelle d:shuju.xls

Enthält die Artikel b1, b2, b3, b4, b5

in dbo.A einfügen

(a1,a2,a3,a4,a5)

SELECT b1,b2,b3,b4,b5

VON OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0',

'Data Source=d:shuju.xls;Extended Properties=EXCEL 8.0' )...[Sheet1$] Rowset_1

Auf diese Weise können Sie es natürlich auch mit der Steuerdatei TXLSFile importieren. Wenn Sie es benötigen, können Sie es bei mir anfordern

mchestnut@163.com

Das obige ist der detaillierte Inhalt vonQuellcode-Implementierung des Excel-Imports in SQLServer. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:docexcel.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen