C#自动生成流水号的代码怎么写?

C#自动生成流水号的代码怎么写?
我是想做这样一件事,在我的主窗体里面有个添加的按钮,当我点击添加按钮的时候,就会弹出一个添加窗体。
添加窗体里面有个TextBox。
我想当我点击添加按钮的时候,添加窗体里面的TextBox会自动生成一个像HK20090919001的流水号,当我点击添加窗体里面的确定按钮时,就会把这个流水号添加到数据库里面去,点击取消,就不添加!
每次都自动加一!
请问那位高水知道到这样的流水号代码怎么写啊?
希望知道的高手能写个源代码(包括数据库)发到我的邮箱:731084712@qq.com
或者加我QQ:731084712 发给我!谢谢啦!!!

可以设计两个字段, 或者是, 你写一个方法然后取出来你要的最大值+ 1然后得到的值, 再做计算,
思路:
1.sql select max(流水号) from 表名
2.比方你上面的, 用字符串截取, 获得去掉前两位的数, 然后获得年月日, 然后呢, 在你的序号上增加一
3.然后等到了你要的数据HK201301050001,
或者, 你建两个字段, 一个显示流水号(也就是你要的值), 一个就不显示, 是这个表的序列号, 然后根据这个序列号去生成你要的HK年月日+ 序列号(也就是第二个字段), 然后得到你要的值,
上面的可以用一个方法实现, 然后呢, 就去调用这个方法就行了追问

谢谢您的思路,可不可以帮我写写具体的实现源码,我是初学者,什么都不怎么明白,非常感谢!

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-14
/// <summary>

/// 生成充值流水号格式:8位日期加8位顺序号,如2010030200000056。

/// </summary>

public string GetSerialNumber(string serialNumber)

{

if (serialNumber != "0")

{

string headDate = serialNumber.Substring(0, 8);

int lastNumber = int.Parse(serialNumber.Substring(8));

//如果数据库最大值流水号中日期和生成日期在同一天,则顺序号加1

if (headDate == DateTime.Now.ToString("yyyyMMdd"))

{

lastNumber++;

return headDate + lastNumber.ToString("00000000");

}

}

return DateTime.Now.ToString("yyyyMMdd") + "00000001";

}
绝对可行。本回答被提问者采纳
第2个回答  2013-01-04
   int k=0;
   private void button1_Click(object sender, EventArgs e)
   {
   string data = DateTime.Now.ToString("yyyyMMdd");
   string str = "HK" + data;
   if (k<10)
   {
   str = str + "00" + k;
   }
   else if (k<100)
   {
   str = str + "0" + k;
   }
   else
   {
   str = str + k;
   }
   textBox1.Text = str;
   k++;
   }
第3个回答  2013-01-07
不安全的说吧,如果是这种流水号那么在使用的过程中会出现安全隐患
可以是年月日 加上一串随即字符组成
第4个回答  2013-01-04
这个流水号不就是日期吗?追问

后面有累加的序号,今天录入的是CP20130104001,CP20130104002,明天录入的是CP20130105003,CP20130105004,这种格式的

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网