c#从数据库中自动生成数字

autogenerate number from database in c#

我使用了下面的解决方案,但每当我删除特定行时,它都会复制该数字。

代码:

void AutoGenerateId()
{
    SqlConnection cn = new SqlConnection(ConString);
    string Query = "select COUNT(*) from StudentDetails";
    SqlCommand cd = new SqlCommand(Query, cn);
    try
    {
        cn.Open();
        int count = Convert.ToInt16(cd.ExecuteScalar()) + 1;
        txtStudentId.Text = count.ToString();
        txtStudentId.Enabled = false;
    }
    catch (Exception ex)
    {
        lblErrorMsg.Text = ex.ToString();
    }
    finally
    {
        cn.Close();
    }
}

您可以使用 sequencer 生成 id 并获取下一个。

示例:

string query = "SELECT NEXT VALUE FOR Student.Sequence;" 

这将 return 一个唯一的数字,即使您删除了一行。