首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

高分:怎么插入有identity 的表

2012-01-22 
高分:如何插入有identity 的表.表xin:idnameaddress1liuchina2zhangUSA3fengengland......其中id为自增长

高分:如何插入有identity 的表.
表   xin   :
    id       name         address
      1         liu           china
      2         zhang       USA
      3         feng         england
      ...     ...
其中id为自增长

我想在表中插入数据   insert   into   xin   values(   , 'gu ', 'HK ');   报错
  insert   into   xin(nam,address)   values( 'gu ', 'HK ')   就可以,但是达不到我的要求.
我的要求是不必指列名也能顺利插入,就象第一行写的那样(因为有的表的列太多了,有100多列,我可不想一个一个的指定,都是默认顺序的)

[解决办法]
SET IDENTITY_INSERT xin ON
insert into xin values( 1, 'gu ', 'HK ')
insert into xin values( 2, 'gu ', 'HK ')
SET IDENTITY_INSERT xin OFF
[解决办法]
如果是这样的话,要注意序号一定要唯一,否则后果自负
呵呵
[解决办法]

--如果除了ID列外,每列都追加数据,用如下:
insert into xin values( 'gu ', 'HK ');
[解决办法]
--加上有如下列:

id(自动编号)
name
address
sex
tel
fax

insert into xin values( 'gu ', 'HK ', '男 ',null, '234567 ');


[解决办法]
上面也可以 推荐使用存储过程
create proc a @name varchar(10),@address varchar(20) as
insert into xin(nam,address) values(@name,@address)
go
[解决办法]
wangtiecheng(不知不为过,不学就是错!) 是正解:
insert into xin values( 'gu ', 'HK ');

系统引擎会默认情况下省略标识列的.

[解决办法]
之所以称为自增列 它会自己会根据你预设的增加 所以你不用你管它的
[解决办法]
insert into xin values( 'gu ', 'HK ')

热点排行