在 c# 或 vb.net 中每年创建一个递增的序列号
create an increasing sequence number per year in c# or vb.net
有没有办法创建一个每年的序号作为学号
它应该包含年份+序列号
像这样:20150001 / 20160001
是否有可能在代码后面..
如有任何帮助,我们将不胜感激。
你可以试试下面的方法..
Dim SequenceNo as String = 'whatever you want the start number to be
Dim Year as String = 'This would be set to the year
Dim RequiredOutput as String = 'this would be set to the number of students you have
Dim StudentID as New List(Of String)
Do Until SequenceNo > RequiredOutput
StudentID.Add(Year & SequenceNo)
SequenceNo += 1
loop
您可以创建方法来生成下一个序列号,它可以包含年份(或入学日期)和学生 ID,如下所示。
private static string GenerateNextSequence(DateTime addmissionDate, int studentNumber, int maxPad = 4) {
var studentNumberString = studentNumber.ToString();
return
string.Format("{0}{1}{2}", addmissionDate.Year,
(new StringBuilder()).Append('0', maxPad - studentNumberString.Length), studentNumberString);
}
上面方法中的maxPad是最大学生数length(如果max students是9999,那么length就是4)
终于找到了一个简单的代码:
Function GetID() As Long
Dim vyear As Integer = 2015
Dim vsno As Long
cmd1.Connection = con1
VSQL = "select max(ID) as vID from Table"
cmd1.CommandText = VSQL
cmd1.Connection = conOra
rdr1 = cmd1.ExecuteReader
rdr1.Read()
If rdr1.HasRows Then
If TypeName(rdr1!vID) <> "DBNull" Then
vsno = rdr1!vID + 1
GetID = vyear & vsno
Else
GetID = vyear & "0001"
End If
End If
rdr1.Close()
con1.close()
End Function
有没有办法创建一个每年的序号作为学号 它应该包含年份+序列号 像这样:20150001 / 20160001
是否有可能在代码后面..
如有任何帮助,我们将不胜感激。
你可以试试下面的方法..
Dim SequenceNo as String = 'whatever you want the start number to be
Dim Year as String = 'This would be set to the year
Dim RequiredOutput as String = 'this would be set to the number of students you have
Dim StudentID as New List(Of String)
Do Until SequenceNo > RequiredOutput
StudentID.Add(Year & SequenceNo)
SequenceNo += 1
loop
您可以创建方法来生成下一个序列号,它可以包含年份(或入学日期)和学生 ID,如下所示。
private static string GenerateNextSequence(DateTime addmissionDate, int studentNumber, int maxPad = 4) {
var studentNumberString = studentNumber.ToString();
return
string.Format("{0}{1}{2}", addmissionDate.Year,
(new StringBuilder()).Append('0', maxPad - studentNumberString.Length), studentNumberString);
}
上面方法中的maxPad是最大学生数length(如果max students是9999,那么length就是4)
终于找到了一个简单的代码:
Function GetID() As Long
Dim vyear As Integer = 2015
Dim vsno As Long
cmd1.Connection = con1
VSQL = "select max(ID) as vID from Table"
cmd1.CommandText = VSQL
cmd1.Connection = conOra
rdr1 = cmd1.ExecuteReader
rdr1.Read()
If rdr1.HasRows Then
If TypeName(rdr1!vID) <> "DBNull" Then
vsno = rdr1!vID + 1
GetID = vyear & vsno
Else
GetID = vyear & "0001"
End If
End If
rdr1.Close()
con1.close()
End Function