是否可以将带有Excel文件的SQL数据库作为"数据源"?

时间:2012-06-27 22:29:02

标签: sql vb.net excel

是否可以从SQL到Excel建立某种链接,使Excel文档成为真正的数据源?我不希望任何数据存储在SQL中,所有数据编辑都将在Excel工作表中完成。

我知道这远非最优,但我没有选择,数据需要保留在Excel中。

我知道在Access中可以选择这种链接,我可以从VS中访问数据,但我更喜欢SQL。

3 个答案:

答案 0 :(得分:3)

也可以直接从您的应用程序使用Jet驱动程序并跳过SQL服务器。

我知道这不是你问题的正确答案,而是另一种可能有用的想法:)

答案 1 :(得分:1)

是的,您可以将Excel设置为链接服务器。您需要使用喷气机驱动程序,但这仅适用于32位机器(微软在一段时间后就放弃了支持)。换句话说,这完全不可扩展,在大多数生产环境中都不推荐使用。

答案 2 :(得分:0)

如果要选择Excel作为数据源,则可以使用.Net Oledb提供程序连接到它。

考虑下面的VB.Net示例来读取Excel工作表上的行:

  imports System.Data.OleDb

        dim connstr as string = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\exceldb.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"""
            Dim conn As New OleDbConnection(connstr)
            conn.Open()
            Dim da As New OleDbDataAdapter("select * from [Sheet1$]", conn)
    Dim dt As New DataTable()
    da.fill(dt)
    For i As Integer = 0 To dt.Rows.Count - 1
     'do your thing
    next
    conn.close()

此致