当数据达到一万条记录时,如果用存储过程来限制插入数据?

suny2003 2007-06-29 08:56:28
当数据达到一万条记录时,如果用存储过程来限制插入数据?
...全文
184 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
comszsoft 2007-06-29
  • 打赏
  • 举报
回复
上面错了,应该这个
create trigger tr_userinfo_insert on 表名
for insert
as
declare @count int
select @count=rows from sysindexes where id=object_id('表名') and indid < 2
if(@count >= 10000)
begin
delete from table1 where 主键= (select 主键 from inserted)
end


comszsoft 2007-06-29
  • 打赏
  • 举报
回复
触发器,我也写个,借用一楼代码

create trigger trg_a on table a after insert
as
declare @icount int
select @icount = rows from sysindexes where id= object_id('a') -- 就这里有些不同
if @icount > 10000
begin
declare @key varchar(30)
select @key = Key from inserted
delete a where Key = @key
end
suny2003 2007-06-29
  • 打赏
  • 举报
回复
create PROCEDURE addTableA
@a int,
@b int,
@c int
as
declare @num as varchar(30)
insert tableA (a,b,c) values(@a,@b,@c)
@num=@@identity
if(@num>=10000)
delete from tableA where id>=@num

不知道这样写有没问题?
smaworm 2007-06-29
  • 打赏
  • 举报
回复
楼上正解,存储过程是需要调用的,你说的情况触发器更合适。
yrwx001 2007-06-29
  • 打赏
  • 举报
回复
寫觸發器
create trigger trg_a on table a after insert
as
declare @icount int
select @icount = count(1) from a
if @icount > 10000
begin
declare @key varchar(30)
select @key = Key from inserted
delete a where Key = @key
end

22,298

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧