自动生成编号

时间:2021-05-20 06:02:54
一.让用户输入信息,并自动生成编号
1>首先定义一个空的字符串
string ucode = "";
2>然后开始生成编号
Sqlconnection conn
= new Sqlconnection("server=.;database=data0551;user=sa;pwd=123;"); 创建数据库的连接对象
Sqlcommand cmd
= conn.Createcommand(); 创建数据库的操作对象
cmd.CommandText
= "select * from users order by ucode desc"; 降序排列,查出最大编号
conn.Open();
SqlDataReader dr
= cmd.ExecuteReader(); 读取到变量dr 里
dr.Read(); 往下读取一行
ucode
= dr["Ucode"].Tostring(); 将objict类型转换成字符串,然后ucode就是现在最大的了
//string a = ucode.Substring(1); 索引值从“1”往后截取所有,例如“U007”截取后是“007”,然后赋值到string类型的a中
int a = Convert.ToInt32(ucode.substring(1)); 因为需要让a++,但是这时a是“007”不能‘++’所以将string类型转换成int类型的
a
++;
//ucode = "U" + a; 因为a++,所以现在a是“8”,又因为编号是“U”开头拼接的,所以这时编号是“U8”格式不对
ucode = "U" + a.Tostring("000"); 将其类型格式化,转换为三位数,不足三位的用“0”补位
conn.Close();
Console.WriteLine(
"你的编号是:"+ucode); 打印出编号
Console.Write(
"请输入名字");
string username = Console.ReadLine();
Console.Write(
"请输入密码");
string password = Console.ReadLine();
Console.Write(
"请输入昵称");
string nickname = Console.ReadLine();
Console.Write(
"请输入性别");
string sex = Console.ReadLine();
Console.Write(
"请输入生日");
string birthday = Console.ReadLine();
Console.Write(
"请输入民族");
string nation = Console.ReadLine();


二.添加到数据库中去

//SqlConnection这里就不用再写了,因为上面已经写了,直接开始写cmd.CommandText 就行了

conn.Open();
cmd.CommandText
= "insert into users values(@a,@b,@c,@d,@e,@f,@g);";
cmd.Parameters.Clear();
cmd.Parameters.Add(
"@a",ucode);
cmd.Parameters.Add(
"@b", username);
cmd.Parameters.Add(
"@c", password);
cmd.Parameters.Add(
"@d", nickname);
cmd.Parameters.Add(
"@e", sex);
cmd.Parameters.Add(
"@f", birthday);
cmd.Parameters.Add(
"@g", nation);


int count = cmd.ExecuteNonQuery();

conn.Close();

if (count > 0) Console.WriteLine("添加成功");

else Console.WriteLine("添加失败");


Console.ReadLine();