0
我试图根据表中已有的数据插入数据。我读了表格以获取插入一个certian月份的记录数量,然后在基于关闭的信息大于或小于十的情况下插入信息。在我读完表格后,当我尝试插入时会抛出一个无效的对象名称。它不是一个无效的对象,因为它只是读取表格。如果这是一个权限错误,我该如何纠正它?我的代码如下。谢谢,在读取同一表后插入无效的对象错误
杰森
declare @email VARCHAR(75),
@seminarNumber INT,
@isValidEmail BIT,
@monthlyTotal INT,
@statusCode INT
set @email = '[email protected]'
set @seminarNumber = '12345'
set @isValidEmail = dbo.RegexMatch('^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3})|([a-zA-Z]{2,3})|(aero|coop|info|museum|name))$',@email)
if @isValidEmail = 1
begin
SELECT @monthlyTotal = count(mailid)
from Email_Tracking
where emailaddress = @email
and year(datesent) = year(getdate())
and month(datesent) = month(getdate())
if @monthlyTotal > 10
begin
set @statusCode = 1
end
else
begin
set @statusCode = 2
end
end
else
begin
set @statusCode = 3
end
if @statusCode = 1
begin
insert Email_Tracking ('seminarNumber','email','reasonNotSent')
values(@seminarNumber,@email,'Maximum surveys for the month have already been sent')
end
else if @statusCode = 2
begin
insert Email_Tracking ('seminarNumber','email','datesent')
values(@seminarNumber,@email,getdate())
end
else if @statusCode = 3
begin
insertEmail_Tracking ('seminarNumber','email','reasonNotSent')
values(@seminarNumber,@email,'Email address missing or invalid')
end
print @statusCode
什么是确切的错误消息,请?我期望“不存在或没有权限”或类似的东西。然而,这是一个重要的信息... – gbn 2011-06-15 18:30:05
我会假设'insertEmail_Tracking'不是一个对象(在else之后,如果@statusCode = 3')? – 2011-08-09 14:11:57