問題タブ [adox]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - C# ADOX を使用して Access データベース テーブルのプロパティにアクセスする方法は?
C# ADOX ライブラリを使用して MS Access データベースを作成しました。複数の列を持つ 1 つのテーブルを作成しました。私が達成したいのは、1 つの列に日付を挿入するときです。日付形式は、MM-DD-YYYY ではなく、YYYY-MM-DD にする必要があります。表示形式だけは知っていますが、アクセステーブルをデザインモードで開くときに設定したプロパティにアクセスし、日付データ型の列の形式をカスタム (YYYY-MM-DD) に設定したいと考えています。テーブルのみを作成しながら、これを実行時に設定したい。列の書式プロパティにアクセスして設定するために使用する必要があるプロパティ名を知りたいですか?
python - Python / ADOX: 「指定されたモジュールが見つかりませんでした。」(win32 拡張機能)
Python 2.5用にpywin32を実行しています。
http://www.ecp.cc/pyado.htmlにあるpython ADO の指示に従っています。
ADODB.Recordset オブジェクトの作成は正常に機能します。しかし、ADOX.Catalog オブジェクトを作成しようとすると、エラーが発生します。
私が見逃している可能性のあるアイデアはありますか?
sql-server - T-SQL を介してビュー コマンドにアクセスするにはどうすればよいですか?
SQL Server でビューを生成するコマンド文字列をプログラムで取得できるようにしたいと考えています。
ADOX コレクションを ADODB 接続と共に使用すると、catalog/view/command プロパティを介してこれにアクセスできるようになります。残念ながら、ADO 接続を介して MS-Access クライアントから SQL Server に接続する場合、'views' コレクションは利用できません。
この問題に代わる T-SQL を見つけられることを願っています。その後、ADO 接続を介して T-SQL 命令を送信し、クライアント側で対応するテキスト文字列を収集できます。
c# - VB.NET -> C# 構文の問題
ADOX を使用して新しい MS Access データベース テーブルを作成したいと考えています。このページには VB.NET のコードがありますが、明らかに C# では動作しません (コードを「変換」したい場合)。誰かがそれを正しく変換してくれたら、私は感謝します。
VB.NET では次のとおりです。
ただし、C# には ADODB.Connection メソッドはありません。
ここに私のコードがあります、私は本当にそれがOKだとは思いません:
sql-server-2005 - SQL/スキーマの比較とアップグレード
単純な状況があります。大規模な組織は、いくつかの (デスクトップ) アプリケーションのいくつかの異なるバージョンを使用しており、各バージョンには独自のデータベース構造があります。約 200 のオフィスがあり、各オフィスには独自のバージョンがあり、7 つの異なるオフィスのいずれかになります。同社は、すべてのアプリケーションを最新バージョン (バージョン 8) にアップグレードしたいと考えています。
問題は、バージョンごとに個別のデータベースがないことです。また、オフィスごとに個別のデータベースもありません。専用サーバーによって処理される単一のデータベースがあるため、管理やバックアップなどを簡単に行うことができます. すべてのオフィスには独自のデータベース スキーマがあり、スキーマ内には、特定のアプリケーション バージョン用のデータベース構造全体があります。その結果、アップグレードが必要な 200 の異なるスキーマを扱っており、それぞれに 7 つの可能なバージョンがあります。幸いなことに、すべてのスキーマは適切なバージョンを認識しているため、バージョンの確認は難しくありません。
しかし、私の問題は、バージョン 1 からバージョン 2、バージョン 3 などにアップグレードできるアップグレード スクリプトを作成する必要があることです。基本的に、すべてのスキーマがすべてバージョン 8 になるまで、1 つのバージョンを上げる必要があります。これは問題ありません。課題は、あるバージョンから別のバージョンへのアップグレード スクリプトを作成する方法ですか?できれば、自動化されたツールを使用してください。RedGate の SQL Compare と Altova の DatabaseSpy を調べましたが、実用的ではありません。Altova は遅すぎます。生成された SQL スクリプトにはまだいくつかのエラーがあり、スキーマ名を参照しているため、RedGate はその後の処理が多すぎます。さらに、コードはストアド プロシージャの一部になる必要があり、RedGate によって生成されたコードは実際には単一のプロシージャ内には収まりません。(さらに、1 つのトランザクション内ですべてを必要としているのに、トランザクション処理が多すぎます。
別の SQL 比較ツールの使用を検討していましたが、私の場合は標準ツールが提供できるものとはあまりにも異なっているように思えます。そこで、独自の比較ツールを作成します。これを行うには、Delphi で ADOX を使用して、データベース内のすべてのスキーマ バージョンのカタログを読み取り、これを使用して、これらのスキーマを次のバージョンにアップグレードするために必要な SQL ステートメントを記述します。(1 と 2、2 と 3、3 と 4 などの比較) SQL-Script-Generators の生成に慣れていないので、それほど多くの問題はないと思います。また、他のデータベース オブジェクトではなく、テーブル構造のみをアップグレードします。
では、この種の比較を行う際に適用できる優れたヒントやコツはありますか? 注意事項 速度を上げるための実用的なヒントは?
c# - ADOXマルチステップOLEDB操作でエラーが発生しました
アクセスデータベース(.mdb)で、すべてのUnicode圧縮とすべての「長さゼロを許可」をオフにするプログラムを作成する必要があります。
[ゼロ長を許可]をオフにする方法は非常にうまく機能します。ただし、Unicode圧縮をオフにする方法はまったく機能せず、次の例外が返されます。
複数ステップのOLEDB操作でエラーが発生しました。可能な場合は、各OLEDBステータス値を確認します。作業は行われませんでした。
これを解決する方法についての手がかりはありますか?
mysql - ADOX または ADOX と ADODB を使用してデータのクエリと編集を行う
ADO と ADODB を使用してデータを取得して表示する方法を理解しようとしていますが、データを変更できるように PK を決定することもできます。
私の計画は、ADODBを使用してExcelでエンドユーザーにデータを表示することです。ユーザーがデータを編集したい場合は、セルの変更を監視するマクロがあり、変更をデータベースに送信します。ADOX を使用してデータのクエリと変更を一度に行うことができない限り、ADOX を使用してキーを見つけてデータを変更する方法が必要です。
私は、MySQL データベースと通信するために ADODB を使用した経験があり、ADOX がデータベース テーブルのキーを表示し、データベース構造を簡単に変更できることも知っています。私がやろうとしていることに関して、私は何も見つけられないようです。
c# - #import ADO を使用したマネージ DLL との ADOX 競合
マネージ dll (C# で記述) を呼び出す /clr を使用するレガシー C++ アプリケーションがあります。
アプリは#import
、ADOX を参照するために使用します。dll は ADOX も参照します。
私のdllへの参照をC++プロジェクトに追加するまで、すべて問題ありません。次に、およびにSTDAFX.CPP
関連するコンパイル時に何百ものエラーが発生します。エラーの中には、インターフェイスの再定義などに関するものもあれば、マネージ コードであるかのように tlh と tli をコンパイルしようとするものもあります。msadox.tli
msadox.tlh
私は成功せずに試し#pragma managed(off)
てみました。#import
関連する場合#import
は、libid:...
メソッドを使用します。
この対立がどのように発生し、それを克服するために何ができるかわかりません。助けてください!
.net - ADOX ファイル ハンドルを開いたままにする
ファイル ハンドルを開いたままにしておく ADOX ライブラリで問題が発生したことはありますか?
VB6 -> VB.Net 変換で奇妙な問題が発生しています。ADOX を使用して特定のデータベース内のテーブルを調べ、自動インクリメント プロパティを true に設定して、そのテーブル内の列のシード値をリセットする関数があります。
「col.Properties("Autoincrement").Value」の呼び出しまで問題を追跡しました。このコード行がコメント アウトされている場合、関数の最後で ADO 接続と ADOX 接続の両方を閉じたときに、ファイル ハンドルが適切に終了します。その行をそのままにしておくと、呼び出しを閉じてガベージ コレクションを強制しても、ハンドルは開いたままになります。
オブジェクトを閉じる方法は次のとおりです。
adoConn は ADO 接続、cat は ADOX.Catalog オブジェクトです。col (以前から) は、カタログ オブジェクトで使用される ADOX.Column オブジェクトです。
私は当初、このアルゴリズムを ADO.Net を使用するように変換しようとしましたが、DataSet オブジェクトを使用して近づきましたが、テーブルの列が自動インクリメントに設定されているかどうかを判断する方法を理解できませんでした。これは Access 2000 データベースの場合です。
visual-c++ - ACE ドライバを使用して .mdb ファイルへの sql insert を実行できません。.accdb ファイルで動作
ACE データベース ドライバーを使用しています。ADOX を使用してアクセス データベースを作成しており、SQL コマンドを使用してデータを挿入しようとしています。ファイル名が .mdb 拡張子を使用している場合は機能しませんが、.accdb を使用している場合は機能します。x64 ace ドライバーを使用しています
これが挿入部分です
これは executeSqlCmd 関数の場所です
フィードバックはありますか?