0

数据库中有一个PilotID字段,起始于1,最高可达9999。现在他们要我再添加 2 种飞行员类型。一个 id 开始于10,000,另一个开始于20,000.

他们都需要共享这个PilotID领域。我的问题是,一旦我创建了一个具有最高 ID 的飞行员,当我尝试创建一个新飞行员时,它只想在数据库中的最高 ID 上递增。这是一个案例的示例。任何建议将不胜感激。

int newpilotID = 0;
int pecID = 10000;
int highSeaID = 20000;

 //checking for PEC provider
if (Session["Role"].ToString().Equals("Provider") && (Session["ProviderID"].ToString().Equals("25")))      
{
    sqlCN.Open();
    qlCOM = new SqlCommand("select f_name from t_Provider where f_Active=1 and f_ProviderID = 25 order by f_name", sqlCN);
    sqlDR = sqlCOM.ExecuteReader();
    Employer.Items.Clear();
    while (sqlDR.Read())
    {
        Employer.Items.Add(sqlDR.GetString(0));
    }
    sqlDR.Close();
    Employer.Items[0].Selected = true;

    sqlCOM = new SqlCommand("select f_PilotID from t_Pilot", sqlCN);
    sqlDR = sqlCOM.ExecuteReader();
    while (sqlDR.Read())
    {
        if (Convert.ToInt32(sqlDR.GetString(0)) > pecID) 
        {
            pecID = Convert.ToInt32(sqlDR.GetString(0));
        }
    }
    sqlDR.Close();

    pecID++;
    PilotID.Text = pecID.ToString();
4

1 回答 1

1

简单地向数据库询问一个案例的当前最高数字,然后将该结果增加 1 怎么样?

select max(id) from mytable where id between 1 and 9999
于 2013-05-30T14:31:56.767 回答