如何自动生成订单流水号?

解决方案 »

  1.   

    是用SQL 还是在.net中生成阿
      

  2.   

    我想先在.net中生成名称再写到sql中,有谁会的???
      

  3.   

    private void Create()
        {
            try
            {
                if (Session["dt"] == null || Session["dt"].ToString() == "")
                {
                    DataTable dt1 = new DataTable();             
                    dt1.Columns.Add(new DataColumn("materialsId", typeof(Int32)));
                    dt1.Columns.Add(new DataColumn("number", typeof(Int32)));
                    
                    
                    Session["dt"] = dt1;
                }
            }
            catch (Exception ex)
            {            throw new Exception(ex.Message);
            }
            
        }
      

  4.   

    .net中不可能自动生成流水号。只能换个思路想:把数据库锁定不然别人插入新数据,然后取得数据库中当前流水号最大的那个值,然后把取得的值加1,再把新的值插入数据库,解除锁定。
    所以还是用数据库自动生成流水号比较方便,资源也占得少。
      

  5.   

    //假设编号为 5 位  即XXXXX
    string i;  //i是你从数据库提出来的最大编号
    int nNum = Convert.toInt32(i)+1   //编号+1
    string strHead= null;
    for(count=0;count<5-Convert.toInt32(i.length);cont++)
    {
       strHead += 0;
    }
    string i = strHead + Convert.toString(nNum); //这里编号增加了1 可以存入数据库了。。
    我也是菜鸟。。直接写的。。没调试。。这里多次用到了字符类型转换。。不知道效率怎么样。。这短的代码应该没事吧。。
      

  6.   

    用System.Guid.NewGuid().ToString();
    这个就可以得到了,微软号称是全球唯一标试!~