従業員の変更要求を追跡するためにいくつかのデータベースに書き込むWebアプリケーションがあります。新入社員の入社に問題があります。アクセス情報が主キーとしてEmployee
他のデータベースに書き込まれる前に、最初にメインデータベースに書き込まれます。EMP_ID
他のデータベースへの書き込みに行くときはEMP_ID
まだ生成されているので、0として入力されています。
これを解決するためにEMP_ID
、値が生成されるまでループして値をチェックしようとしましたが、クエリが値が見つからなかったことを返すため、ループでスタックし続けます。
while (int.Parse(empIDChecker) == 0)
{
dbConnection.Open();
validateIDSQLString = "SELECT EMP_ID FROM EMPLOYEE_TABLE WHERE FIRST_NAME = '" + firstNameTextBox.Text.Trim() + "' AND LAST_NAME = '" + lastNameTextBox.Text.Trim() + "'";
SqlCommand updateSQLCmd = new SqlCommand(validateIDSQLString, dbConnection);
SqlDataReader getRecords = updateSQLCmd.ExecuteReader();
try
{
empIDChecker = getRecords["EMP_ID"].ToString();
}
catch
{
empIDChecker = "0";
}
getRecords.Close();
dbConnection.Close();
}