我已经创建了一个Excel工作表,它执行一些查找来格式化需要插入到另一个表中的数据。这个Excel工作簿需要提供给一些可以自由添加一些新行的用户,然后需要能够点击“插入数据库”按钮并将记录转换并作为新记录插入到SQL表中。我正在使用Excel 2010和SQL Server 2008.我有一个连接到数据库,因为我正在使用它来拉回一些数据以验证新添加的行,但我不知道如何将数据插回。将Excel中的数据插入到SQL数据库中DB
7
A
回答
13
你可以做很多与ADO:
Dim cn As New ADODB.Connection
''You should probably change Activeworkbook.Fullname to the
''name of your workbook
strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" _
& ActiveWorkbook.FullName _
& ";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"";"
cn.Open strCon
s = "INSERT INTO [ODBC;Description=TEST;DRIVER=SQL Server;" _
& "SERVER=Server;Trusted_Connection=Yes;" _
& "DATABASE=test].SomeTable (Col1, Col2, Col3, Col4) " _
& "SELECT a.Col1, a.Col2, a.Col3, a.Col4 " _
& "FROM [Sheet2$] a " _
& "LEFT JOIN [ODBC;Description=TEST;DRIVER=SQL Server;" _
& "SERVER=Server;Trusted_Connection=Yes;" _
& "DATABASE=test].SomeTable b ON a.Col1 = b.Col1 " _
& "WHERE b.Col1 Is Null"
cn.Execute s
您还可以使用ACE连接:http://www.connectionstrings.com/或OPENROWSET和SQL服务器连接。在所有情况下,根据您的注册表设置,您可能在列中出现混合数据类型问题(http://forum.lessthandot.com/viewtopic.php?f=17&t=12043&p=59669&hilit=excel#p59669)
0
在excel中修改数据后,需要生成Update语句,按下“update”按钮即可执行。因此,将执行更新和插入语句。然后必须将查询发送到在Excel中刷新数据(恕我直言)
3
我发现在一个宏内,您可以创建一个ADO连接,方法是向“Microsoft ActiveX数据对象6.0库“。一旦你已经打开了宏内的连接,您可以创建插入语句,并通过使用connection.Execute(声明)方法执行:
Dim item as String = "Insert Into MyTable(ColA,ColB) VALUES('Foo', 'Bar')"
Dim thisCon As New ADODB.Connection
thiscon.Open("ConnectionString")
thisCon.Execute (item)
相关问题
- 1. 使用HTTP从Excel中将数据插入到SQL Server数据库中Post
- 2. 插入到C#中的SQL数据库#
- 3. 将数据从ASP.NET插入到本地SQL Server数据库中
- 4. 无法将数据插入到SQL Server数据库中
- 5. 如何将数据插入到SQL Server Express数据库中
- 6. 我无法将数据插入到SQL Server数据库中
- 7. 将数据库中的数据插入多个Excel文件
- 8. 插入“坏”数据到SQL数据库?
- 9. 插入数据到SQL Server数据库
- 10. 从Excel文件插入数据到SQL Server数据库
- 11. 将excel数据导入到codeigniter中的数据库中
- 12. 将数据插入到可能有重复数据的SQL Server数据库中
- 13. 如何将Excel表格中的数据插入到数据库表格中?
- 14. 数据未插入到数据库中
- 15. 数据未插入到数据库中
- 16. 将数据插入到cPanel数据库
- 17. 将数据插入到SQL Visual Studio中
- 18. 将HTML数据插入到SQL Server中
- 19. 从列表中插入数据到DB
- 20. 将数据从数据库插入数组并将数据嵌入到textarea中
- 21. 将URL插入到MySQL数据库中
- 22. 将表中的数据插入到数据库中 - SQL Server/VS 2010
- 23. 将数据库错误重新插入到数据库中
- 24. 如何将数据从SQL数据库导出到MS Excel中
- 25. 使用PDO将数组数据插入到数据库中
- 26. Linq to SQL没有将数据插入到数据库
- 27. 使用LINQ to SQL将数据插入到SQLite数据库
- 28. 将数据表插入到asp.net中的mysql数据库
- 29. 将数据插入到条件为/ codeigniter的数据库中
- 30. 将数据插入到数据库的精确副本中
辉煌,谢谢。我不知道你可以从宏内获得ADO,当我发现它变得很容易(如下面的ansert所示:)) – Ben 2010-09-22 10:32:24