为制药行业的药品生成唯一的序列号

前端有一个表单,用于选择要包含在 UNIQUE 序列号生成中的Alpha-Chars和Numbers。它可以包含大写和小写(aA bB)和 0-9 中的数字。

  

没有特殊字符。

用户还可以输入序列号的最大长度。 最小长度为10,最大长度为20 。因此,用户可以在10到20之间选择。还应该选择最少5个字母和2个数字。 序列号不能以数字开头,应始终为字母字符。

如果我需要100个数量(批次),则使用所选的字母字符和数字,我们需要生成100个不同的序列号(在此示例中,我可能选择了'A,B,C,D,E,1,2 ”)。还可以重复字母和数字。长度为10的示例,然后是AAAaaAAAAA,AAAAAA11AA等

  

所以这里的变量是“数量”和“字母字符+数字”。

能否请您帮我验证一下序列号,并在整个应用程序中保持唯一性。

尝试在SQL Server 2012中使用序列,但无法清楚地了解如何实施所有验证以及在整个应用程序中生成唯一的序列号。

lcxs123 回答:为制药行业的药品生成唯一的序列号

相反,SQL Server可以使用RegexJavascript从前端进行操作

[a-zA-Z0-9]{10}

这将生成以下序列

  • QwDj7X4gfM
  • H3G0uCs43Q
  • TIoXncEK5N

More Demo

,

这是一种方法,您可以根据需要扩展它。它涵盖:

  • 以随机字母开头
  • 可变长度
  • 唯一性
  • 字母和数字(但只能是大写字母)

因此,如果您需要更复杂的内容,请进行扩展:

const int N = 12 ;
int v= strtol(v) ;
if ( v & 1<<(N-1) ) v |= ~ ((1<<N)-1) ;

我们正在使用GUID和REPLICATE来生成可变的长度和唯一性。您可以再添加一个字母或符号,以使新字符串始终至少为10个字符。

本文链接:https://www.f2er.com/3168830.html

大家都在问