sql 怎么设置自动编号列

写了一个程序,需要跟数据库连接,想在数据库表里新建编码列,然后每插入一行数据,然后编码列就自动生成编码。最一行编码为0000001。第二行0000002,第三行0000003以此类推。数据库应该怎么弄。请高手指点下

第1个回答  2013-05-09
如果不在外部处理的话,可以考虑使用触发器,但是会再增加一列,作为存储varchar,呵呵,随便想的, --测试环境,包括楼上的方法,但是测试的楼上的方法,好像不太灵验。
create table tableb
(id int not null identity(0000001,1),
n int ,
p varchar(10)
)--插入数据insert into tableb (n) values (2)
select * from tableb--触发器CREATE TRIGGER tg_a
ON tableb
AFTER INSERT
AS
begin
update tableb set p=right(cast((10000000000+tableb.id) as varchar(20)),10) from inserted where tableb.id=inserted.id
end本回答被网友采纳
第2个回答  2013-05-09
可以在外面下代码 然后往数据库里插 也可以写存储过程 在数据库里生成 判断 数字是不是你想要的位数,不满足自动用0 补齐

关于SQL自动编号
用企业管理器打开表后选择修改字段→把下面字段属性的【标识】选项选择为【是】→如果需要定义【初始值(标识种子)】和【每次递增值(标识递增量)】的话定义一下就可以了 直接用sql建表 create table 表名(字段名1 int identity(1,1)--这是从【一】开始每次自动加【一】的自动编号 字段名2 int...

SQL数据库列自动生成编号?
两种方法:1、用Truncate TRUNCATE TABLE name可以删除表内所有值并重置标识值 2、用DBCCCHECKIDENT DBCC CHECKIDENT ('table_name', RESEED, new_reseed_value)如dbcccheckident("bc_pos",reseed,1)即可,但如果表内有数据,则重设的值如果小于最大值可能会有问题,这时可以用dbcccheckident("bc_pos",...

SQL2005如何实现自动编号
自动编号:alter table user_info add id int Identity(1,1)user_info是表名 id 是要进行自动编号的字段属性名。也可以直接设置:如图

SQL将数据类型改成INT类型,进行自动编号
在表节点上鼠标右键---设计,如上图

sql数据库建表时如何实现自动编号
可以有两种办法啦:1.在企业管理器里面建:这种方法很简单点击选中的数据库右键新建即可相信你应该会不多说了。2.在查询分析器里建:基本思路要建表,表是要在库里建的所以你要先引用你要使用的数据库加进来再开始建表,以下为一个简单实例;create database student --创建一个student数据库由于这里...

sql里用触发器实现自动编号
不需要用触发器,为字段设置属性就可以实现,不知道你所说的sql是不是指MS SqlServer,是的话,给字段设置为bigint类型,然后把它的“标识列”属性设置为真就可以了。access的话,直接类型选为“自动编号”就可以了。--- 那么你可以这样,比如:表名为tab,你想要的列为bm(字符型),希望的格式是...

SQL Sever 2008中,如何在已有的表中对字段设置自动编号
char(10))表T1中已有数据,且userID列均为空值,现要将userID列定义为自动编号,可以采取以下方法解决:创建新表:CREATE TABLE New_T1(userID int IDENTITY(1,1) NOT NULL,Username char(10)) 创建完毕后执行下列语句:insert into New_T1(Username) select Username from T1 即可解决。

SQL查询让一个字段自动编号
DB2\/ Oracle \/SQL server 2005以上可以用这个 select row_number() over(order by name), name, age from student 其他数据库很难实现

SQL怎样自动生成编号格式如:GG+YYYYMMDD+4位流水编号
(NumberHeader NVARCHAR(40) --号码单头类型 )DECLARE @NumberHeader NVARCHAR(40), --编号头 NumberMiddle CHAR(8), --编号中间规则 MaxNum CHAR(8), --编号最大流水号 SQL NVARCHAR(4000)SET @NumberMiddle= CONVERT(CHAR(8),GETDATE(),112) --设置中间编码规则 SET @SQL = '...

sql 怎么设置自动编号列
create table tableb (id int not null identity(0000001,1),n int ,p varchar(10))--插入数据insert into tableb (n) values (2)select * from tableb--触发器CREATE TRIGGER tg_a ON tableb AFTER INSERT AS begin update tableb set p=right(cast((10000000000+tableb.id) as ...

相似回答