SQLからExcelへのある種のリンクを作成してExcelドキュメントを真のデータソースにすることは可能ですか?SQLにデータを保存したくないので、すべてのデータ編集はExcelシートで行われます。
これが最適とはほど遠いことはわかっていますが、選択の余地はありません。データはExcelに保持する必要があります。
Accessでこの種のリンクを実行するオプションがあり、VS内からデータにアクセスできることは知っていますが、SQLの方が本当に好きです。
アプリケーションから直接Jetドライバーを使用して、SQLサーバーをスキップすることもできます。
私はこれがあなたの質問に対する適切な答えではないことを知っていますが、役に立つかもしれない別の考えです:)
Yes, you can set up excel as a linked server. You'll need to use a jet driver but this is only available on 32bit machines (Microsoft dropped their support a while back). In other words, this is completely not scale-able and not recommended in most production environments.
データソースとしてExcelを選択する場合は、.NetOledbプロバイダーを使用してExcelに接続できます。
以下の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()
よろしく