ID范围和增量

时间:2013-05-30 13:20:36

标签: c# sql-server

数据库中有一个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();

1 个答案:

答案 0 :(得分:1)

如何简单地向数据库询问案例的当前最高编号,然后用1?

递增该结果
select max(id) from mytable where id between 1 and 9999