SQL 插入时如表为空时值为NULL
SELECT (max(FID),0)+1 FROM tbUserPermission
会报错,加个判断ISNULL(*,0)即可避免出错。
SELECT ISNULL(max(FID),0)+1 FROM tbUserPermission
用select方法插入记录(一条语句:求得主键最大值,同时判断表中是否存在此记录,如有不插入,没有插入):
insert into tbUserPermission (FID, UID,MID, MenuID, FunID)
select (SELECT ISNULL(max(FID),0)+1 FROM tbUserPermission),'133','2','904','106' --直接求得(主键)最大值,这样省去多写代码了。
where (select COUNT(*) from tbUserPermission where UID= '133' AND MID= '2' AND MenuID= '904' AND FunID='106')=0 --判断一下表中是否已有此条件记录。