向数据库中插入一条数据 AIR001 前三位手动输入 后三位自动生成
数据库中已经存在AIR001 ,AIR002 ,AIR003
再插入 AIR 时 自动变成AIR004

解决方案 »

  1.   

    请看我的博客,原理是一样滴http://www.cnblogs.com/zhang9418hn/archive/2011/12/05/2274796.html
      

  2.   

    你要是保证它不一样,首先生成这个AIRxxx的时候就要考虑;然后写入时,查询当前AIRxxx是不是已经存在
      

  3.   

    //验证用户名是否存在
     if (TWoYaoDaiLiUserService.GetAllTWoYaoDaiLiUsersByWhereSql("where zhangHao='" + this.txtZhangHao.Text.Trim() + "'").Count > 0) 
                    {
                        MessageBox.Show(this.Page,"温馨提示:账号已存在,请重新输入!");
                        return;
                    }        public static IList<TWoYaoDaiLiUser> GetAllTWoYaoDaiLiUsersByWhereSql(string whereSql)
            {
                string sqlAll = "SELECT * FROM TWoYaoDaiLiUser " + whereSql;
                return GetTWoYaoDaiLiUsersBySql(sqlAll);
            }
      

  4.   

    你还不如拆开来,分成两个字段,一个用于存 AIR,一个是自增字段,使用时再拼起来就完了。这样即能达到你的要求,并且还保证绝对不会有冲突。取最大值加 1,如果程序写不好,并发数较大时会产生重复的流水号。
      

  5.   

    看你怎么需要拉,5楼的说的不错,可以采纳一下,
    还有一个方法就是插入数据时,写个方法自动生成你那个字段不就可以了嘛?AIR***,
    也不用你自己判段啊
      

  6.   

    关于生成并发唯一性流水号的解决方案
    http://www.52rs.net/ArticleView.aspx?gID=71bd9b1d-ad30-4f6e-896d-fed7dfbc1b3d
      

  7.   

    select一下不就行了啊,条件就是根据要插入的数据进行判断
    楼主你懂的