2016-04-11 18 views
0

私は他人が開発したMS Access 2016データベースを使用しています。データベースには、数値フィールドを持つ最上位のテーブルがあります。 MS Accessに直接インポートされた書式設定済みのExcelワークブックを使用してデータを追加します。MS Accessテーブルに行を追加する

データベースが開発されたので、いくつかのレベル(行)をTABLEに追加する必要がありました。データベースが作成されたときに元々コンパイルされたものより多くのサンプリングサイトがコンテキストになります。

だから、サンプリングサイトを増やすことは簡単だと思った。 TABLEを開いて新しいサイトの行を追加しました。テーブルを保存して、新しいサイトからデータをインポートしようとしました。ここではエラーメッセージは次のとおりです。彼らは、インデックス、主キー、または 関係で重複する値を作成します ので、あなたがテーブルに依頼

変更が成功しませんでした。 重複するデータが含まれているフィールドのデータを変更するか、インデックスを削除するか、インデックスを再定義して の重複したエントリを許可してから、もう一度お試しください。

この回答を調べると、オートコンプリートの問題に対処するためのlinkにつながっています。私はトップレベルのテーブルにオートコンプリートをリセットする指示を完了しました。

残念ながら、同じエラーメッセージが再び表示され、今後どのように処理するのか不明です。

これは誰も以前に遭遇した問題のようですか?それは非常に具体的であり、それは少し記述することも難しいです。

+1

関連するテーブルの知識がなく、インポートされたデータがどのようにExcelから処理されるかを知ることができないと、エラーの原因を突き止めるのが難しくなります。独自の制約がある他のテーブルはありますか?列の値は一意ですか?テーブル定義を追加し、より多くの情報(スクリーンショット)を追加すると、これが役に立ちます。また、あなたの問題がvbaに関係していない場合、あなたはsuperuser.comの方がよいかもしれません。 – surfmuggle

+0

私はまだAccessについての質問方法を学んでいます。単純にコードを投稿するよりもはるかに難しい。だから列の数字は本当にユニークです。ユニークな拘束を持つ他のテーブルはありません - 私は思っていません。ユニークな拘束を定義できますか?どのようにデータを扱うかという点で、それをどのように評価するかについての考えはありますか? – boshek

答えて

0

挿入しようとしているデータが、一意のインデックスを持つ列に既に存在しています。 エラーが表示される理由を理解するには、データをテーブルに挿入するSQLをキャッチする必要があります。それは簡単ではないかもしれませんし、アプリケーションで使用される技術に依存します。私はこのエラーはサイトからデータをインポートするVBAコードによって生成されたと思います。エラーメッセージが表示されたら(Ctrl-Break)、デバッグをクリックし、On Error GoTo ...コード行をコメントしてインポートを再開すると、コード実行を停止します。デバッガはエラーラインで停止します。 SQLラインをコピーし、それをクエリービルダーで分析用に使用し、どのデータが重複しているか把握してください。

テストでは、ユニークなインデックスを削除し、データを挿入し、ユニークなインデックスでインデックスされたカラムに重複を分析することもできます。

+0

ありがとう@Sergey S.残念なことに、トラブルシューティングのアプローチがうまくいかず、SQLを捕まえることができませんでした。 Ctrl-Breakステップでは、目的の効果が得られませんでした。どのように私は周りに取得する上の任意のヒント? AccessはGUIベースなので、私は自分の問題を説明する方法を理解することができません。 – boshek

+0

インデックスを削除して、挿入されたデータを分析しようとしましたか?削除後、このエラーは表示されません。 –