【发布时间】:2011-09-06 11:56:13
【问题描述】:
我正在尝试将一些旧的 VB6 代码转换为 VB.NET。旧代码使用 DAO,现在我试图在 ADO.NET/OleDB 中复制它。我已经取得了一些进展(我认为...),但现在我不知道如何将 DataTable 对象添加到数据库中。
这是旧的 VB6 代码,td 是来自 DAO 的 TableDef 对象:
If fso.FileExists(loc) Then
Set td = m_db.CreateTableDef("Ratings")
td.Connect = "Excel 8.0;HDR=Yes;IMEX=2;DATABASE=" & loc
td.SourceTableName = "Sheet1$"
m_db.TableDefs.Append td
bFileNotExists = False
Else
bFileNotExists = True
End If
据我了解,这是从 Excel 文件“loc”中读取 Sheet1,然后将其附加到 DAO 数据库对象 m_db。这是我到目前为止所拥有的,如果您发现任何错误,请纠正我,因为我刚刚开始做这种事情-
If fso.FileExists(loc) Then
oleCon = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & loc & ";Extended Properties=""Excel 8.0;HDR=Yes;")
oleCon.Open()
oleAdapter = New OleDbDataAdapter("SELECT * FROM [Sheet1$]", oleCon)
oleAdapter.Fill(dt)
bFileNotExists = False
Else
bFileNotExists = True
End If
因此,我不是使用 TableDef,而是从同一张工作表中获取数据并将其放入 DataTable 对象 (dt) 中。我希望到目前为止这是正确的。现在我的问题是如何从上面复制m_db.TableDefs.Append td 行。谢谢!
【问题讨论】: