SQL数据保存失败
收银前台出现(数据保存失败:不能在具有唯一索引’jsj#’的对象’sys_dh_no’中插入重复键的行。)
解决办法:
首先备份目前的数据库。开始菜单程序>>Microsoft SQL Server>>企业管理器中找到
在表中找到‘sys_dh_no’点鼠标右键>>设计表后找到
中的第二个按钮进去点索引/键,找改为 关闭保存后退出。
开始菜单程序>>Microsoft SQL Server>>SQL查询分析器中编译
查询
declare @max integer,@id integer,@id2 integer declare cur_rows cursor local for select sb,js#,count(*) from sys_dh_no group by sb,js# having
count(*) > 1
open cur_rows
fetch cur_rows into @id,@id2,@max while @@fetch_status=0
begin
select @max = @max -1
set rowcount @max
select * from sys_dh_no where sb = @id and js# =@id2
fetch cur_rows into @id,@id2,@max end
close cur_rows
set rowcount 0
删除
declare @max integer,@id integer,@id2 integer declare cur_rows cursor local for select sb,js#,count(*) from sys_dh_no group by sb,js# having
count(*) > 1
open cur_rows
fetch cur_rows into @id,@id2,@max while @@fetch_status=0
begin
select @max = @max -1
set rowcount @max
delete from sys_dh_no where sb = @id and js# =@id2
fetch cur_rows into @id,@id2,@max end
close cur_rows
set rowcount 0
把改为
就OK~