如何将Excel表中的数据导入到数据库相应的数据表中。最好给个示例看看。

解决方案 »

  1.   

    我用的数据库是SQL Server 2000
      

  2.   

    企业管理器上有啊!你选择源数据数据类型为jet那种就行啦
      

  3.   

    Dim cn As ADODB.Connection
        Dim strSQL As String
        Dim lngRecsAff As Long
        Set cn = New ADODB.Connection
        cn.Open "Provider=SQLOLEDB;Data Source=<server>;" & _
            "Initial Catalog=<database>;User ID=<user>;Password=<password>"    'Import by using OPENDATASOURCE.
        strSQL = "SELECT * INTO XLImport6 FROM " & _
            "OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0', " & _
            "'Data Source=C:\test\xltest.xls;" & _
            "Extended Properties=Excel 8.0')...[Customers$]"
        Debug.Print strSQL
        cn.Execute strSQL, lngRecsAff, adExecuteNoRecords
        Debug.Print "Records affected: " & lngRecsAff    'Import by using OPENROWSET and object name.
        strSQL = "SELECT * INTO XLImport7 FROM " & _
            "OPENROWSET('Microsoft.Jet.OLEDB.4.0', " & _
            "'Excel 8.0;Database=C:\test\xltest.xls', " & _
            "[Customers$])"
        Debug.Print strSQL
        cn.Execute strSQL, lngRecsAff, adExecuteNoRecords
        Debug.Print "Records affected: " & lngRecsAff    'Import by using OPENROWSET and SELECT query.
        strSQL = "SELECT * INTO XLImport8 FROM " & _
            "OPENROWSET('Microsoft.Jet.OLEDB.4.0', " & _
            "'Excel 8.0;Database=C:\test\xltest.xls', " & _
            "'SELECT * FROM [Customers$]')"
        Debug.Print strSQL
        cn.Execute strSQL, lngRecsAff, adExecuteNoRecords
        Debug.Print "Records affected: " & lngRecsAff    cn.Close
        Set cn = Nothing
      

  4.   

    能给段C#的代码吗?VB有点看不懂。谢谢了~~~!!!
      

  5.   

    给你提个醒,你先把Excel中的数据读到DataTable,然后逐行判断,插入,记得用事务处理,这样不会产生戎予数据