2017-02-01 6 views
-2

同じIDを持つテーブルを更新したいとします。同じIDを持つ複数の行を1つのテーブルに更新します。

デザインビュー:

enter image description here

データベース設計:

enter image description here

基本的にはユーザーが選択した後、将来的には、彼らはそれを更新することができている形です。しかし、私はどのように値を更新することができないのか分かりません。

現在、2行あり、Scholarship_id = 1であるとします。ユーザーが1、3、6を選択した場合、どのように更新できますか?

DELETE FROM ScholarshipDiploma 
WHERE Scholarship_ID = '2'; 

UPDATE ScholarshipDiploma 
SET course = '1' 
WHERE Scholarship_ID = '2'; 

ただし、2の行全体が削除され、更新されません。

+0

これまでに試したことについて詳しく説明してください。 – Vinod

+0

もう一度やってみてください – skylight

+0

あなたは 'DELETE ScholarshipDiploma WHERE ScholarshipDiplomaID = '2''を使うことはできません。それはPKのように見えます。 –

答えて

0

deleteステートメントは、updateステートメントと同じwhere句を持ちます。したがって、updateステートメントの前にdeleteステートメントを実行すると、更新するrowdはありません。最初に削除してから新しい行を挿入してください。

INSERT INTO ScholarshipDiploma (Scholarship_id, course) values (1,1), (1,3), (1,6) 
関連する問題