2016-03-29 11 views
0

これはどのように可能ですか? 私はテーブル連絡先を持っていて、フィールドはです。連絡先はです。これは自治体タイプです。私はそれに次のクエリを実行しました:自動番号フィールドに重複があります

SELECT ContactId 
FROM Contacts 
GROUP BY contactId 
HAVING Count(ContactId) > 1 

そして私は9レコードを得ました。

+1

重複する値を含む行を削除し、 'ContactId'を主キーにします。それ以上の重複はありません。 – HansUp

+4

いくつかの理由:http://allenbrowne.com/ser-40.html –

答えて

2

INSERT SQLを使用して自動番号フィールドに任意の値を挿入できるため、可能です。この後、次の番号=最後に挿入された+1が生成されますが、最大番号+ 1は生成されません。 これを避けるには、自動番号フィールドにプライマリまたはユニークキーを追加します。

+0

プライマリキーを追加するにはどうすればよいですか?私はそれが自律番号を主キーにしていると思った。 – MJH

+0

いいえ、新しいオートナンバーフィールドを追加するだけでプライマリキーにはなりません。これは、ウィザードを使用してテーブルを作成する場合に発生します。テーブルデザインでフィールドを選択し、リボンのDesign-> Primary Keyをクリックしてください –

+0

今、新しいテーブルを作成することはできません。 ContactIdが主キーであるかどうかをどのように確認できますか?デザインビューでは、一般的に、新しい値が増分です。それがプライマリキーであることを意味しませんか?そうでない場合はどうすれば変更できますか? – MJH

関連する問題