C# 如何自动生成id
我只需要自动生成像abc101,abc102,abc103,…abc10n的id 它应该存储在DB表中。而且它应该在运行时显示在任何文本框中 请给出一个适当的解决方案 提前特别感谢:) 问候 Pradeep Kodley您可以使用GUID:C# 如何自动生成id,c#,C#,我只需要自动生成像abc101,abc102,abc103,…abc10n的id 它应该存储在DB表中。而且它应该在运行时显示在任何文本框中 请给出一个适当的解决方案 提前特别感谢:) 问候 Pradeep Kodley您可以使用GUID: System.Guid guid = System.Guid.NewGuid (); String id = guid.ToString(); 如果每个ID都有相同的前缀,那么前缀就是浪费空间。只需使用一个自动递增的整数,并在报表和其他内容中添加前缀。您
System.Guid guid = System.Guid.NewGuid ();
String id = guid.ToString();
如果每个ID都有相同的前缀,那么前缀就是浪费空间。只需使用一个自动递增的整数,并在报表和其他内容中添加前缀。您的数据库表可能有一个自动递增列。您能告诉use更多关于您的问题和您想做什么吗?您可以通过在数据库中创建触发器来实现这一点,触发器将在插入任何记录之前运行 在触发器中,“abc”+(MAX(idColumn)+1)将获取下一个值
您还可以在c#中创建一个方法,该方法将获取最后一个id,递增并插入它您的数据库可以为您生成顺序id
标识列
设置为trueAutoincrement
设置为truecon.Open();
string sqlQuery = "SELECT TOP 1 kode_user from USERADM order by kode_user desc";
SqlCommand cmd = new SqlCommand(sqlQuery, con);
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
string input = dr["kode_user"].ToString();
string angka = input.Substring(input.Length - Math.Min(3, input.Length));
int number = Convert.ToInt32(angka);
number += 1;
string str = number.ToString("D3");
txtKodeUser.Text = "USR" + str;
}
con.Close();
不要问“给我发个代码”之类的问题。展示你到目前为止的情况,以及是什么导致了你的问题。请给出你的问题的背景。id必须是唯一的吗?这个id基于什么?有什么值得考虑的吗?它的目的是什么?我使用Asp.Net3.5与c#和SqlServer2005我只想自动生成学生唯一id。像abc101、abc102……通过它,我可以通过唯一的id识别每个学生……我必须对hostelStd_id(hostel student id)做同样的事情。您使用什么来访问数据库?林克?实体?尼伯酸盐?阿多?如果您计划使用此id作为查找学生的手段,最好在MSSQL数据库中使用一个标识字段作为主键。@Hun1Ahpu:这将生成唯一id,但不是op想要的,这是一个连续的唯一id。@KMan:他说该id必须是连续的。他对自己问题的评论表明,他对序列并不特别感兴趣,只对单一性感兴趣。@Gorpik:读第一行
abc101,abc102,abc103,…。abc10n
@KMan:我读过了。即使在本例中ID是连续的,OP也不再提及它。评论中要求他澄清,他只说他需要ID是唯一的。-1我不确定在存在其他解决方案时提倡触发器是个好主意。我知道有一个自动增量功能。但是他实际上希望在前面加上字符串“abc”。undo-1//尽管这样的代码可能应该来自业务层,那么如何自动生成id类型的字符串呢?