c#怎么设置存入sql数据库的序号
cmd.Parameters["@id"].Value="="后面怎么样编写代码可以让存入数据库的编号id每次加一...
cmd.Parameters["@id"].Value= "="后面怎么样编写代码 可以让存入数据库的编号id每次加一
展开
5个回答
展开全部
先从你的数据库中查询 表中最大的编号:比如表A "select Max(id) from A" 例子如下:
public string GetId(int t)//t为1为数值类型 2为字符类型 id 结构为 ID001
{
string str_id="";
SqlConnection con=new SqlConnection ("xxx");
con.Open();
Sqlcommand com=new ( "select Max(id) from A",con);
objiect ob=com.ExecuteScalar();
if(ob is DBnull)
{
if(t==1) str_id="1";
if(t==2) str_id="ID0001"
}else
{
if(t==1) return convert.ToString((convert.ToInt32(str_id)+1));
int temp=0;
str_id=(string)ob;
str_id=str_id.Substring(str_id.Lenght-4,4);
temp=convert.ToInt32(str_id)+1;
if(temp<10)
{
str_id="ID"+"00"+temp.ToString();
}
else if(temp<100)
{
str_id="ID"+"0"+temp.ToString();
}
else if(temp<1000)
{
str_id="ID"+temp.ToString();
}
}
return str_id;
}
你可以这样用 cmd.Parameters["@id"].Value=GetId(X);
public string GetId(int t)//t为1为数值类型 2为字符类型 id 结构为 ID001
{
string str_id="";
SqlConnection con=new SqlConnection ("xxx");
con.Open();
Sqlcommand com=new ( "select Max(id) from A",con);
objiect ob=com.ExecuteScalar();
if(ob is DBnull)
{
if(t==1) str_id="1";
if(t==2) str_id="ID0001"
}else
{
if(t==1) return convert.ToString((convert.ToInt32(str_id)+1));
int temp=0;
str_id=(string)ob;
str_id=str_id.Substring(str_id.Lenght-4,4);
temp=convert.ToInt32(str_id)+1;
if(temp<10)
{
str_id="ID"+"00"+temp.ToString();
}
else if(temp<100)
{
str_id="ID"+"0"+temp.ToString();
}
else if(temp<1000)
{
str_id="ID"+temp.ToString();
}
}
return str_id;
}
你可以这样用 cmd.Parameters["@id"].Value=GetId(X);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我不明白楼主为什麽非要插入自增的ID,如果需求允许的话。
直接对数据表字段ID 设置自动增长就行了。
这样不用在代码里加@id的value,数据表的id行会自动增长的。
直接对数据表字段ID 设置自动增长就行了。
这样不用在代码里加@id的value,数据表的id行会自动增长的。
追问
谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个可以设置你的表的字段为自动增长。也可以用UID(序列号)来设置编号,这样会更好。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-03-08
展开全部
找出最大编号id+1 然后赋值。
select max(id) from table
推荐把数据库的编号id 设置为自增列
select max(id) from table
推荐把数据库的编号id 设置为自增列
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你好,用+=1试试吧;
没这样用过,你为嘛不在数据库中直接设置自增字段呢?
或者直接做一个循环 让id变量++ ??
这两个随便挑一个都比这好。
算了 好运吧
没这样用过,你为嘛不在数据库中直接设置自增字段呢?
或者直接做一个循环 让id变量++ ??
这两个随便挑一个都比这好。
算了 好运吧
追问
+=1是不行的
我试试第二种方法
追答
恩 我信;因为我没按照你说的试过
试试后两种方法吧 (大家常用的)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询