读书人

帮小弟我看看小弟我这里有什么错!牛人

发布时间: 2011-12-26 23:09:58 作者: rapoo

帮我看看我这里有什么错!牛人请进
string persIdSql = "select case when max(convert(bigint,pers_id)) is null then 0 else max(convert(bigint,pers_id)) end +100000001 as id from tab_pers_info ";
string id = (new SqlDb()).Tb(persIdSql).Rows[0][ "id "].ToString();
char persid =Convert.ToChar( id.Substring(1, id.Length - 1));

我有这样一个表

表1

pers_id pers_name
00000001 小红
00000002 小张
00000003 小华

这个时候我想插入这样的记录 00000004 小陈

就变成了下面这样
pers_id pers_name
00000001 小红
00000002 小张
00000003 小华
00000004 小陈

请问怎么实现


[解决办法]
1.建个function或者sp-----获取pers_id
2.每次插入时,pers_id就从那个function或者sp处取值即可.

注:为了防止并发操作,建议具体获取方法为:

1.新建一个表,包含一个自增长字段id
2.每次都取不通的id出来
3. c#将此id格式化,类似你的(00000004 ).

读书人网 >C#

热点推荐