SQLCE データベースにアクセスし、必要に応じて変更する Excel VB アプリケーションを作成しました。vba の接続文字列は次のとおりです。
dbConnectionString = "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source=C:\sitsDB.sdf;"
私はプロジェクトをほぼ完全に完了し、SQLCE データベース ファイルのフィールドの 1 つを拡張して、より多くの文字を格納できるようにすることを除いて、すべてがうまく機能します。
このフィールドはデータ型nvarcharで、デフォルトの長さは 100 です (どうやら 50 文字を許可する必要がありますか?)。  
このフィールドは、少なくとも 200 文字を格納したい開いているテキスト ボックスに必要です。
Microsoft Visual Basic 2010 Express で初期データベースを作成しました。フィールドの長さをnvarchar100 より大きい値に変更すると、SQL SELECTステートメントの実行時に次のエラーが発生します。
実行時エラー '-2147217887 (80040e21)': 複数ステップの操作でエラーが発生しました。各ステータス値を確認してください。
VBA の SQL ステートメントは次のとおりです。
With rsResults
    .Source = "SELECT * FROM Incidents WHERE Number = " & number
    Set .ActiveConnection = dbConnection
    .CursorLocation = adUseClient
    .CursorType = adOpenStatic
    .Open
End With
回線でエラーが発生します.Open。
SELECT * FROM長さが 100 を超えるフィールドを除外して特定の列のみを選択するように変更すると、すべてが期待どおりに機能します。
したがって、1 つのフィールドの長さが 100 を超えることは間違いありません。そのフィールドの長さを 100 に戻すと、すべてが正常に機能します...
.CursorLocationそこで使用しているおよび.CursorType関数についてはあまり知りません。私は例によって学びました。それが最初に見つけた例です。
どんな助けでも大歓迎です!