如何用sql语句添加删除主键
1个回答
展开全部
对于一个表来说,主键可能由一个字段构成,但是也可能有多个字段构成。后者就是复合主键。你的薪资发放表中主键是(员工号,发放日期),即唯一确定一条记录需要这两个字段的联合取值,缺一不可。故,所以可使用如下的语句
delete
from
薪资表where
(
工号
=
'xxx'
and
发放日期
=
'xxxdate'
)
or
(工号
=
'xxx'
and
发放日期
=
'xxxdate'
)
or
........
复合主键在使用上不方便,所有一般在有复合主键的表中可以人为增加一个单字段的主键,例如薪资发放id,这样可以简化sql的写法和界面参数的传递,只需传一个id值即可。不需再设计工号和发放日期字段。
例如:delete
from
薪资表where
薪资发放id
in
('id1','id2','id3',...)当然in也可以用or的等价写法。
delete
from
薪资表where
(
工号
=
'xxx'
and
发放日期
=
'xxxdate'
)
or
(工号
=
'xxx'
and
发放日期
=
'xxxdate'
)
or
........
复合主键在使用上不方便,所有一般在有复合主键的表中可以人为增加一个单字段的主键,例如薪资发放id,这样可以简化sql的写法和界面参数的传递,只需传一个id值即可。不需再设计工号和发放日期字段。
例如:delete
from
薪资表where
薪资发放id
in
('id1','id2','id3',...)当然in也可以用or的等价写法。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询