日期:2014-05-18  浏览次数:20612 次

请高手帮忙,看看什么错误
create procedure [dbo].[论文个人得分] 
as 
begin 
declare @员工编号char(10) 
declare @score1 float 
declare @姓名char(50) 
declare @论文名称char(50) 
declare @分工char(10) 
declare @参加人数int 
declare @总分float 
set @姓名=(select 姓名from 教职员工,编写where 编写.员工编号=教职员工.员工编号and @员工编号= 编写.员工编号) 
set @论文名称=(select 论文名称from 论文,编写where 编写.论文编号=论文.论文编号and 编写.员工编号=@员工编号) 
set @分工=(select 分工from 编写,论文where 编写.论文编号=论文.论文编号and 编写. 员工编号=@员工编号) 
set @参加人数=(select 参加人数from 论文, 编写where 编写.论文编号=论文.论文编号and 编写.员工编号=@员工编号)
set @总分=(select 总分from 论文,编写where 编写.论文编号=论文.论文编号and 编写. 员工编号=@员工编号) 
begin 
if @参加人数=1 
set @score1=@总分
else if @参加人数=2 and @分工='主持人' 
set @score1 = @总分*0.7 
else if @参加人数=2 and @分工='参加人' 
set @score1 = @总分*0.3 
else if @参加人数=3 and @分工='主持人' 
set @score1 = @总分*0.6 
else if @参加人数=3 and @分工='参加人' 
set @score1 = @总分*0.3 
else if @参加人数=3 and @分工='参加人' 
set @score1 = @总分*0.1 
else if @参加人数=4 and @分工='主持人' 
set @score1 = @总分*0.5 
else if @参加人数=4 and @分工='参加人' 
set @score1 = @总分*0.3 
else if @参加人数=4 and @分工='参加人' 
set @score1 = @总分*0.1 
else if @参加人数=4 and @分工='参加人' 
set @score1 = @总分*0.1 
else if @参加人数=5 and @分工='主持人' 
set @score1 = @总分*0.5 
else if @参加人数=5 and @分工='参加人' 
set @score1 = @总分*0.2 
else if @参加人数=5 and @分工='参加人' 
set @score1 = @总分*0.1 
else if @参加人数=5 and @分工='参加人' 
set @score1 = @总分*0.1 
else if @参加人数=5 and @分工='参加人' 
set @score1 = @总分*0.1 
else if @参加人数=6 and @分工='主持人' 
set @score1 = @总分*0.5 
else if @参加人数=6 and @分工='参加人' 
set @score1 = @总分*0.2 
else if @参加人数=6and @分工='参加人' 
set @score1 = @总分*0.1 
else if @参加人数=6 and @分工='参加人' 
set @score1 = @总分*0.1 
else if @参加人数=6 and @分工='参加人' 
set @score1 = @总分*0.05 
else if @参加人数=6 and @分工='参加人'
set @score1 = @总分*0.05 
end 
update 编写
declare @员工编号char(10)
set 得分=@score1 where 编写.员工编号=@员工编号
end 
print '职工号:'+@员工编号+'职工名:'+@姓名+'论文得分为:'+str(@score1)



错误
消息 102,级别 15,状态 1,过程 论文个人得分,第 4 行
'(' 附近有语法错误。
消息 102,级别 15,状态 1,过程 论文个人得分,第 6 行
'(' 附近有语法错误。
消息 102,级别 15,状态 1,过程 论文个人得分,第 11 行a
'.' 附近有语法错误。
消息 102,级别 15,状态 1,过程 论文个人得分,第 12 行
'.' 附近有语法错误。
消息 102,级别 15,状态 1,过程 论文个人得分,第 13 行
'.' 附近有语法错误。
消息 102,级别 15,状态 1,过程 论文个人得分,第 14 行
'.' 附近有语法错误。
消息 102,级别 15,状态 1,过程 论文个人得分,第 15 行
'.' 附近有语法错误。
消息 137,级别 15,状态 2,过程 论文个人得分,第 17 行
必须声明标量变量 "@参加人数"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 18 行
必须声明标量变量 "@总分"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 19 行
必须声明标量变量 "@参加人数"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 20 行
必须声明标量变量 "@总分"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 21 行
必须声明标量变量 "@参加人数"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 22 行
必须声明标量变量 "@总分"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 23 行
必须声明标量变量 "@参加人数"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 24 行
必须声明标量变量 "@总分"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 25 行
必须声明标量变量 "@参加人数"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 26 行
必须声明标量变量 "@总分"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 27 行
必须声明标量变量 "@参加人数"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 28 行
必须声明标量变量 "@总分"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 29 行
必须声明标量变量 "@参加人数"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 30 行
必须声明标量变量 "@总分"。
消息 137,级别 15,状态 2,过程 论文个人得分,第 31 行
必须声明标量变量 "@参加人数"。
消息 137,级别 15,状