アプリ版:「スタンプのみでお礼する」機能のリリースについて

初めてSQL Server 2008 Expressを入れて使用しているのですが、
作成したテーブルに同一データをいれて、
SQL Server Management Studio から上位200行編集を選択し
その入れたデータを削除すると、エラーが発生して削除できません。
エラー内容は、

エラーメッセージ:行の値が更新または削除された為、行が一意になりません。または複数の行が更新されます。

特にプライマリキーの設定やインデックスなどは使用していないのですが、何か設定が必要なのでしょうか。
初歩的な質問で申し訳ありませんが、よろしくお願い致します。

A 回答 (1件)

そのテーブルに主キーのように一意性のある列がなく、すべての列を見渡しても全く同じ値が入っているレコードが複数あるってことでしょうか。


Management Studio のツールでは、一意の区別がつかない場合は全ての列の値を使って更新対象レコードを一意に識別しようとしますが、それでも更新対象レコードの区別がつかない場合はエラーになります。
素直に [新しいクエリ] で SQL を書いたほうが良いかと。

まぁ何かのテストデーターなのかもしれませんが、すべての列を見比べても全く同じ内容のレコードが複数必要な場面ってあるんでしょうかね。。。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

今回、ちょっとした動作確認するために、一定時間間隔内に行われた処理を
単純に処理区分データを追加するプログラムをつくったので、
同一データが複数レコード入ってしまうような感じになってしまいました。

今後は、同一データの入らないように気を付けたいと思います。

お礼日時:2011/07/28 14:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A