teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

2020/08/13 01:50

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -1,51 +1,2 @@
1
- VB.NETでListを作成し、Listの中身を用いてSQLから1行ずつ呼び出してUPDATEする機能を作成しております。
2
-
3
- キーが1つの場合は作成済みなので、これを基に今回複合主キーでも動作するようにしたいです。
4
- テーブルとカラム内容、以下す。
1
+ こちら質問削除済みものとなっておす。
5
-
6
- TESTテーブル
7
-
8
- ID(キー)
9
- LiNo(キー)
10
- Link
11
- Status
12
- Art
13
- Class
14
- Section
15
-
16
-
17
- Classの値がYのものを呼び出して、Linkの値を+にして更新する。
18
- ものになります。
2
+ よろしくお願ます。
19
-
20
-
21
- キーが1つの場合ですと、ForEachを用いたコードでアップデートできるました。
22
- IDListにはIDを追加しています。
23
- (一部コメントアウトしているのですがご理解ください。)
24
-
25
- ```VB.NET
26
- For Each ID As String In IDList
27
- .ID.Value = CntID
28
- 'SQLのレコードが見つかれば
29
- .Link.Value = "+"
30
- 'アップデート
31
- Next
32
- ```
33
-
34
- 今回の質問ですが、複合主キーの場合でも1つのキー同様にUPDATEを行えるようにしたいです。
35
- 下記のようにすると1IDに対し複数LiNoがループしてしまい、正しい結果が得られませんでした。
36
-
37
- ```VB.NET
38
- For Each ID As String In IDList
39
- .ID.Value = CntID
40
- For Each LiNo As String In LiList
41
- .LiNo.Value = LiNo
42
- 'SQLのレコードが見つかれば
43
- .Link.Value = "+"
44
- 'アップデート
45
- Next
46
- Next
47
- ```
48
-
49
- 理想としては、IDListとLiListをセットにしたListを作成して、キー1つの場合のように
50
- IDとLiNoを用いてUPDATEできればと考えているのですが、何分初心者なもので案が浮かびませんでした。
51
- 断片的な情報で恐れ入りますが、ご回答をよろしくお願いいたします。