ODBC &アクセスデータベースに関する質の高い情報はどこで入手できますか?ODBCおよびアクセスデータベースに関する高品質の情報はどこで入手できますか?
私は、MFC/C++/JavaのODBCを使用して長年にわたり様々なプロジェクトに取り組んできました。
現在、私は、カスタマイズされたMFCレイヤを使用してAccess 2000 dbmファイルに接続されたODBC DSNに動的にインターフェイスするC++/MFCプロジェクトを持っています。
これは一般に機能します。
DBMS:Accessのバージョン:04.00.0000 ODBCドライバマネージャバージョン: 03.80.0000オプション機能の状態が実装されていません:S1C00、ネイティブ:106、原産地:
しかし、私は一般的のような警告を取得します[Microsoft] [ODBC Microsoft Access ドライバ]
警告:ドライバは要求された同時実行性をサポートしていません。 S1C00、ネイティブ:106、原産地:オプション 機能は 州実装されていない今、[Microsoft]の[ODBC Microsoft Accessの ドライバー]
とを当社のソフトウェアは、ビューを作成しようとしたとき、私は次を得る:
一般的な警告レジストリキー 'Temporary(volatile)Jet DSN for prcess 0x18fc Thread 0xc0 DBC 0x8c4cfc Jet'を開くことができません。 状態:01000、ネイティブ:1、原産地:[Microsoft]の[ODBC Microsoft Accessドライバ]
DBMS:Accessのバージョン:04.00.0000 ODBCドライバマネージャバージョン: 03.80.0000実行SQL:作成ビューSPECとして選択CALNAME TESTとして、カード番号、CARTONSTYLEカートンCCALとしてRULRULYとしてFLUTE、CORRDIR、 CUSTOMERID、深さDESCRIPTIO、デザイナー、DESIGNNUM、JOINTSIZE、 JOINTTYPE、PANEL_DとしてDESCRIPTION、長さPANEL_L、WIDTHとしてPANEL_W、DSIZEXとして RULRULX、としてDSIZEY、SHEETUXはSIZEX、SHEETUYは とし、SIZEY、SHEETXはGROSSX、シートはGROSSYから「Designs」に変換します。 DESIGNNUMはNULLではありません。
警告:ODBCの成功情報てSQLSetConnectAttrの状態が失敗しました:IM006、ネイティブ:0、原産地:[Microsoft]の[ODBC ドライバマネージャ]全般PR ocess 0x18fcスレッド0xc0からDBC 0x8c4cfc Jetのレジストリキー「一時的な(揮発性)ジェット DSNを開くことができません警告' 状態:01000、ネイティブ:1、原産地:[Microsoft]の[ODBC Microsoft Accessドライバ]
最初の部分については、オプション機能実装されていない、と同時実行状態が実装されていない(おそらく、同じ根本的な問題に関する警告について)、私はソフトウェアがどのような並行処理機能を求めているのか分かりません。並行性の状態はどのようなものが適切ですか?どのようにして "正しい"ものを求めるのでしょうか? Windowsのバージョンと適切な並行性の状態のテーブルがありますか?
2番目の部分では、レジストリキーを開くことができなかったためにビューを作成できなかったことについてはどうですか?誰がどのレジストリキーを開くことに失敗していますか?
「Windows NTの一時フォルダ」にIUSRの完全なアクセス許可を与える必要があるという情報があります。これは、デスクトップアプリケーションが懸念する必要がある恐ろしい問題のように思えます。 ODBC DSNを使用しているデスクトップアプリケーションは、ユーザーの読み取り/書き込み可能なパスに存在するデータベースファイルを操作するときに、ユーザーのアクセス許可にどのように関わる必要がありますか?ユーザーがこのSQLを実行するのに必要なアクセス許可は何ですか?また、ユーザーはすでにデータベース内の既存の表の列と行を追加および削除できるため、さらに何を行う必要がありますか?
このコードはXPで動作するために使用されました。だから私は、VistaやWindows 7が今やこの機能をブロックするセキュリティを追加したと仮定しなければならない。
私はに興味があります:
- など、実際に彼らの様々なODBCアクセスインターフェイス、オプション、バージョン、ホストの問題を文書化し、マイクロソフトからの正規の基準材料、
- 同時性に関する警告に関する特定の情報。
- アクセス2000 dbmでビューを作成しようとしたときの明白なアクセス権の失敗に関する特定の情報。
- 上記を近代化するための提案は、完全なオーバーホールまたは技術の置き換えを意味するものではありません。つまり、Accessファイルを2003年や2007年などに更新したり、バックエンドをSQL Server Liteに切り替える可能性はありますが、ODBCから一部の置換ミドルウェアに変更することはできません(&のリスクがあります)。
ご協力いただきありがとうございました。
元の質問には答えがありませんが、ポイント4はありません。私はAccessからSQL Serverにいくつかの変換を行ってきました。全体的なデータベース・スキーマの転送はわずかな変更に過ぎないので、移行はかなり簡単です。ほとんどのアプリケーションSQLはストアドプロシージャにも容易に移行されました。 –
ありがとうございます。私はこれがかなりまっすぐ進むはずだと信じています。最大の問題は、SQL Server Liteとインストーラを統合し、法的問題を再確認し、アプリケーションの生成されたSQLで必要な構文上の変更を実装することです。それは自明ではないし、上記の問題のすべてがそのような変化で解決されることを疑いなく知っていれば、正当化する方が簡単だろう。最後に、現在使用されているAccessデータベースを持つ既存の顧客のための移行の仕組みが必要になります。一口。 :P – Mordachai