SQL中identity的参数问题

insert into stumarks(mid,msid,msubject,mark) select IDENTITY(int,max(stumarks.mid)+1,1),'s12303','java',85

也就是说起始位置是从表中mid列的最大值选出来的 怎么都插入不成功 怎么回事啊

你的语句是没写完吗?如果是写完了就不对了
select 后面没有指定任何表是引用不到stumarks的
insert into stumarks(mid,msid,msubject,mark)
select IDENTITY(int,max(mid)+1,1),'s12303','java',85 from stumarks
另外identity里面好像用不到聚合函数,建议还是声明中间变量来传值吧追问

我试了下 还是不行 是不是identity就不能用函数作为参数啊 你说用中间变量怎么用

追答

你这么写的目的是什么呢?如果只是想让mid自增的话,可以直接定义mid为identity列啊
identity(int,1,1)这种形式只能用于select into句式,是用来创建表的,插入的话会报错的

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-08-17
indentity(seed,incremnet),有两个参数,第一个参数设置初始值,第二参数设置增量。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网