Local Data Connector を使用して、MySQL、ORACLE、Microsoft SQL-Server、またはその他の (ODBC) データベースにアクセスしようとすると、必要なテーブル/ビューを表示/選択できません。
Local Data Connector に接続するテーブル/ビューが表示されません。テーブル/ビューを選択するドロップダウンが空のままです。
Local Data Connector を使用する場合、特定の制限が適用されます。これらは選択されたデータベース/ドライバによって異なります。
データベースに基づく具体的な情報については、以下を参照してください。
- ORACLE
- ODBC
- MySQL
- Microsoft SQL-SERVER (MSSQL)
TNS_NAME変数がシステム全体で使用可能で、SQLPLUS / SQL DEVELOPER経由でアクセスできるように構成されていることを確認してください。
Local Data Connectorは、ORACLEオーナー/スキーマのテーブル/ビューのみを可視化できます。(ORACLEドライバ)
認証しているユーザがスキーマユーザ でない場合、 対応するテーブル/ビューを選択することができません。
認証にスキーマ所有者を使用する許可を得ることができるかどうか、データベース管理者に尋ねてください。
制約によりこれが実行不可能な場合、2つのオプションがあります:
- ORACLE ODBC ドライバを使用してデータベースにアクセスします。
- さまざまなドライバがあるため、今後発生する問題のサポートはできません:/knowledgebase/article/KBA-36009
- データベースに認証するユーザでビューを作成する。
- ローカル・データ・コネクタで、"docuware "などのユーザを使用しています。
- ORACLE データベースにユーザ docuware でビューを作成します(自動的に所有者 / スキーマ docuware が割り当てられます)。
- データベース管理者にビューの作成が許可されているか確認してください。ビューの作成に関する一般的なヒント/knowledgebase/article/KBA-35282を参照してください。
- さらに、以下の制限に留意してください/knowledgebase/article/KBA-KBA-37229
ORACLE データベースに接続すると、"ORA-00942: table or view does not exist." というエラーが表示されます。どうすればよいですか?
- SQLPLUS / SQL DEVELOPER を使用して ORACLE データベースに認証します。
- OBJECT_NAME'をビュー/テーブルの名前に置き換えて、ビュー/テーブルを検索するために以下のステートメントを修正します。
SELECT *
FROM all_objects
WHERE object_type IN ('TABLE','VIEW')
AND object_name = 'OBJECT_NAME'; - 文の結果が空のままであれば、ORACLE DBAに連絡して、ユーザの権限/許可を確認してください。
- 複数の結果行を受け取った場合、例えば、同じ名前で所有者が異なる2つのテーブル/ビューがある場合、ビュー/テーブル名を一意な名前に変更するようお問い合わせください。
- ローカルデータコネクタは、テーブル/ビューへのステートメントを完全に修飾することができないため、テーブル/ビューへのアクセスは一意でなければなりません。
- テーブル/ビューを示す1行を受信した場合、サポートに連絡してトラブルシューティングのアドバイスを受けてください。
2.ODBC
ローカルデータコネクタは標準的なODBCドライバ接続を想定しています。
異なるODBCドライバとアーキテクチャのため、標準的なケースしかサポートできません。詳細については、記事/knowledgebase/article/KBA-KBA-36009
ODBCデータベースへの接続を有効にするには、「ODBCデータソース 」内でそれぞれの接続を作成します。
新しく作成されたシステム DSN 名は、Local Data Connector データソース接続内のデータベースサーバ名と なります。
例 ODBC 接続 DWTEST を作成した場合、Local Data Connector の Database Server Name フィールドにこれを入力してください。
32ビットと64ビットのODBC接続を同じ名前で作成してください。/knowledgebase/article/KBA-KBA-36311
特定のデータベースによっては、構文が異なるか、コマンドが完全に異なる場合があります。 SAP Hana および IBM DB2 データベースがこれらの基準に該当すると評価しています。
SAP Hana の select ステートメントの構文により、Local Data Connector との接続を有効にするために追加の労力が必要です。SAP Hana Select Syntax
IBM DB2 の場合、異なるリミッターコマンドにより追加の労力が発生します。DB2 Fetch First
以下の構文とリミッターコマンドを想定しています:
構文SELECT DISTINCT TOP |
さらに、ORACLE 接続と同様の制限が適用されます。
テーブル/ビューへのアクセスは、データベース認証で提供されたユーザーに制限されます。
ORACLEセクションの説明を確認し、データの選択を可能にしてください。(スキーマユーザーまたはビューの作成)
3.MySQL
MySQLのソフトウェアバグ(.Net Bug)とLocal Data Connectorを含むDocuWareソフトウェアへの影響により、MySQLの最大サポートバージョンは8.0.28です。
MySQLの8.0.28までのバージョンのデータベースは、統合MySQLドライバで接続できます。新しいバージョンは ODBC 経由で接続する必要があります。
MySQL データベースでは、適切なユーザ/所有者に加えて、テーブル/ビューを表示する機能が制限されます。
Local Data Connector は、提供されたデータベースユーザで次のステートメントを実行します。
show full tables;
ユーザに上記のコマンドを実行する権限がない場合、ドロップダウンは空のままになります。
4. Microsoft SQL Server - MSSQL
以下がMicrosoft SQL Serverデータベースに適用されることを確認してください:
- データベース、テーブル、ビューがDBOスキーマに配置されていること。
- 該当しない場合は、DBO スキーマにビューを作成することを検討してください。
- knowledgebase/article/KBA-35282と /knowledgebase/article/KBA-KBA-37229を確認してください。
- データベース・ユーザーには少なくとも以下の権限が必要ですDATAREADER と DATAWRITER
- オブジェクト(テーブル/ビュー)は認証されたユーザの SCHEMA_ID に割り当てられなければなりません。
ローカルデータコネクタは以下のステートメントを実行し、ユーザに割り当てられたテーブル/ビューを評価します:
SELECT [name] FROM [sys].[objects] WHERE ((type = 'U') AND (schema_id = SCHEMA_ID())); SELECT [name] FROM [sys].[objects] WHERE ((type = 'V') AND (schema_id = SCHEMA_ID())); |
ドロップダウンが空のままであれば、MSSQLデータベース・ユーザーで上記のコマンドを実行し、結果セットを確認してください。
SCHEMA_IDの詳細については、公式ドキュメントを参照してください。objects (Transact-SQL) - SQL Server | Microsoft Learn
さらに、構成とセットアップについては、データベース管理者にお問い合わせください。
Local Data Connectorに関する一般的なトラブルシューティングのヒントについては、ガイドをご確認ください: /knowledgebase/article/KBA-36420
KBAはクラウドとオンプレミスの両方の組織に適用されます。
ご注意:この記事は英語からの翻訳です。この記事に含まれる情報は、オリジナルの英語版製品に基づくものです。翻訳版の記事で使用されている文法などには、細かい誤りがある場合があります。翻訳の正確さを完全に保証することは出来かねますが、ほとんどの場合、十分な情報が得られると思われます。万が一、疑問が生じた場合は、英語版の記事に切り替えてご覧ください。