ユーザーがフォームを完了すると、一度に5レコードまでを完了できます。挿入コードに必要な数のIDを挿入するにはどうすればよいですか?
ユーザーが1つのレコードを完了した場合、1
によるIDの増分はしかし、ユーザーが1つの以上のレコードを完了したとき、私たちは、ユーザーが完了したとして、IDができるだけ多くのレコードずつ増加すると予想。例えば
、のは、ID 2516を持つユーザーが3つのレコードを完了し、私たちのようなものを見ることを期待するとしましょう:
ID User
1 2516
2 2516
3 2516
4874のIDで別のユーザーが2を完了した場合、我々は次のようになります。
ID User
4 4874
5 4874
など
代わりに、特定のユーザーが入力した新レコードの数にかかわらず、IDの値は1だけインクリメントされます。
私はこれが以下のコードに基づいていることを知っています。
特定のユーザーが送信するレコード数に基づいて値が増えるように修正してもらえますか。
IDシードを使用してそれを増やすことは望ましくありません。
いつものように、あなたの助けが非常に高く評価されます。
sql += "INSERT INTO Emp (UserSequence, employee_id, charity_code, check_amt, chcknum, one_time, bi_weekly, cash, donate_choice, date_stamp) "
sql += "VALUES ((select isNull(max(UserSequence), 0) + 1, '" & Replace(employee_idLabel.Text, "'", "''") & "','" & Replace(dedval.SelectedValue, "'", "''") & "','" & Replace(chckval.Text, "'", "''") & "','" & Replace(chcknumval.Text, "'", "''") & "','" & Replace(onetimeval.Text, "'", "''") & "','" & multival.Text & "','" & Replace(cashval, "'", "''") & "','" & Replace(donatechoice.SelectedItem.Value, "'", "''") & "','" & Replace(datestamp, "'", "''") & "');"
何らかの理由で問題が解決されないストアドプロシージャはありますか?挿入されたレコードごとに(IDの他に)値が同じになるようです。 1つのパラメータとして挿入するレコードの量と、それ以外のすべての値を独自のパラメータとしてprocに渡す方が効率的です。 –
現在のMAX(ID)を選択してID(列)の値を作成しないでください。ただし、データベースでIDENTITYを使用するようにしてください。未チェックのユーザー入力を連結して挿入ステートメントを作成しないでください。 – Filburt