重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
一楼是个好办法不过如果你非要这样做,也不是不可能。
创新互联公司服务项目包括南雄网站建设、南雄网站制作、南雄网页制作以及南雄网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,南雄网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到南雄省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
select 'T' + Cast( ISNULL(Max(Cast(SUBSTRING(studentID,1,4) AS INT)),0) +1 AS varchar)
这样就得到最大的一个ID了。
没测试,但基本上就是这样实现的。
可以在查询分析器中建表时 在列中定义
create table
{
columname bigint identity(1, 1) ,
primary key(columname)
}
/*,identity(1,1)中前面一个1 是
种子后面的1是增长量 ,都是可以按需求变的
*/
也可以在企业管理器中设计表
定一个主键数据类型为tinyint或int或bigint,点“标示”,选择“是”,就可以了
1、例如给某表添加一个Num自增列,这张表已经有很多行数据了,通过sqlserver表设计器,添加一个新字段Num,如图所示,
2、添加字段后,点击保存,会弹出一个小框“不允许保存更改。所做的更改要求删除并重新创建一下表”,这个要求不能满足啊,这么多的数据,删除了怎么办?
3、点击SQL Server Management Studio顶部的菜单【工具】-【选项】,
4、打开【选项】弹窗界面如图所示,默认展开的是【常规】选项,
5、拖动左侧的菜单,找到并点击【表设计器】-【表设计器和数据库设计器】,
6、在右侧出现的【表选项】中,找到并 取消勾选【阻止保存要求重新创建表的更改】,点击【确定】按钮,
7、再次在表设计界面,点击保存,如果表中的数据量很大的话,会有这个验证警告:“将定义更改保存到包含有大量数据的表中可能需要很长时间”,此项可以忽略,
8、直接点击【是】按钮,就可以保存成功了。
sql
server建表时设置ID字段自增的方法有两种:
1
、在SQL
Server
Management
Studio中实现SQL
Server自增字段
打开SQL
Server
Management
Studio,打开数据库之后,在选中的表上点“修改”,在选中需要设置为自增的字段,在右下方的表设计器里选择“标识规范”,选“是”,就设定即可。
也可以在表的属性窗口中设置设置标识列:
2、使用SQL语句在程序或者查询分析器里面实现SQL
Server自增字段
sql
server
设置自增字段identity属性
(以新建数据表tablename中的id字段为例)
create
table
tablename
(
id
int
identity(1,1)
//identity表示自增列的意思,而int
identity(1,1)表示从1开始递增,每次自增1。
)
这样设置之后,tablename数据表中的id字段就是自增列。
如果想实现带前缀或者后缀的自动增加字段,不能用varchar,还是使用上面的方法创建字段,但是在读取的时候用增加前后缀的形式来显示想要的效果,例如如果希望得出结果是a001可以这么做select
'a'+convert(varchar(20),id)
from
tablename,这里的tablename是刚才建立的具体的表明。
SqlServer中的自增的ID的最后的值:
SELECT SCOPE_IDENTITY() --返回插入到同一作用域中的 IDENTITY 列内的最后一个 IDENTITY 值。
SELECT @@IDENTITY --返回插入到当前会话中任何作用域内的最后一个 IDENTITY 列值
SELECT IDENT_CURRENT('TbName')--不受作用域和会话的限制,而受限于指定的表。
IDENT_CURRENT 返回为任何会话和作用域中的特定表所生成的值。
一个作用域就是一个模块——存储过程、触发器、函数或批处理。因此,如果两个语句处于同一个存储过程、函数或批处理中,则它们位于相同的作用域中。
SQL可以多个语句一起执行:
insert into ... ; SELECT SCOPE_IDENTITY() ;
二条一起执行,到时可获取第二个SQL的值
楼主可以把LO1当做string; 然后把后三位当做int 主见设置为自增1。
查询时 select "L01"+自增字段 from table
希望能帮到楼主!