sql自动生成列
两种方法:
1、用Truncate
TRUNCATETABLEname可以删除表内所庆帆有值并重置标识值
2、用DBCCCHECKIDENT
DBCCCHECKIDENT('table_name',RESEED,new_reseed_value)如dbcccheckident("bc_pos",reseed,1)即可,
但如果表内有数据,则重设的值如果小于最大值可能会有问题,这时可以用dbcccheckident("bc_pos",reseed)即可自动重设值。
注意:
只能为不允许空值且数据类型为decimal、int、numeric、smallint、bigint或tinyint的判念列设置标识属性。此外,不能为主键列设置标识属性。
(1)sql自动生成列扩展阅读:
关于上述标识列的引用
如果在SQL语句中引用标识列,可用关键字IDENTITYCOL代替,例如,若要查询上例中ID等于1的行,
以下两条查询语句誉冲雹是等价的:
1、SELECT*FROMT_testWHEREIDENTITYCOL=1
2、SELECT*FROMT_testWHERE
⑵ 如何通过sql语句自动生成列
create table ( id int identity(1, 1) not null primary key, other_column varchar(50))-- 对表设置主键的同时,数据库会自动的创建一个以主键作为名称的唯一索引的。
⑶ sql 怎么设置自动编号列
可以在外面下代码 然后往数据库里插 也可以写存储过程 在数据库里生成 判断 数字是不是你想要的位数,不满足自动用0 补齐
⑷ 如何用sql语言创建自动增长的列
CREATE
TABLE
[表名]
(
[AUTOID]
[int]
IDENTITY
(1,
1)
NOT
NULL
,
[列名]
[varchar]
(50)
COLLATE
Chinese_PRC_CI_AS
NULL
)
ON
[PRIMARY]
GO
能看明白吗?[AUTOID]
[int]
IDENTITY
(1,
1)
NOT
NULL
就是自动增长的字段,自动加1.
⑸ 如何通过sql语句自动生成列
用触发器,每次添加纪录的时候触发,查询整个表格,找出最大值+1,变成这个字段的值。呵呵,浪费时间!
用GUID的类型作为主键就不会重复了,默认值用newid(),这样也不好啊!主键的值是默认值提供的话,你的程序必须要刷新以后才能继续修改这个纪录。我一般的做法,在程序中用coCreateGUID生成一个GUID填写进去,然后post这个新纪录,不让SQL Server的默认值发挥作用,这样不用刷新就可以继续修改这个新纪录。
⑹ sql自动生成自然数列怎么写
select a.col*1000+b.col*100+c.col*10+d.col+1 as col
from
(select 0 as col union all select 1 union all select 2 union all
select 3 union all select 4 union all select 5 union all
select 6 union all select 7 union all select 8 union all select 9)a
cross join
(select 0 as col union all select 1 union all select 2 union all
select 3 union all select 4 union all select 5 union all
select 6 union all select 7 union all select 8 union all select 9)b
cross join
(select 0 as col union all select 1 union all select 2 union all
select 3 union all select 4 union all select 5 union all
select 6 union all select 7 union all select 8 union all select 9)c
cross join
(select 0 as col union all select 1 union all select 2 union all
select 3 union all select 4 union all select 5 union all
select 6 union all select 7 union all select 8 union all select 9)d
order by col
⑺ 如何用sql创建自增列
SQL SERVER?
identity属性
create table tablename
(
id int identity,
c varchar(10)
)
id就是自增列。
已经创建的表无法直接把某字段设置为自增,只能把原来的字段删除,之后再添加具有自增属性的列。
步骤如下
--删除列
alter table a
drop column list
--添加具有identity属性的列
alter table a
add list int identity