我有一个 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();
}