create procedure ModCourse
@tablename varchar(80),
@course varchar(50),
@chengji numeric(10,2)
as
declare @sql varchar(300)
set @sql='insert into ' + @tablename + '
(ID,name,course,chengji)
select distinct ID,name,''' + @course + ''',' + cast(@chengji as varchar(20)) + '
from ' + @tablename exec (@sql)
go

解决方案 »

  1.   

    调用:
    exec ModCourse 'A980331','英语',70
      

  2.   

    .......@tablenme+'(ID,name,course,chengji)
    select distinct ID,name,''' + @course + ''',' +cast.....
    @course前面的三个单引号和后面的三个单引号是什么意思??
      

  3.   

    当使用单引号分隔一个包括嵌入单引号的字符常量时,用两个单引号表示嵌入单引号,例如:SET @MyCharVar = 'O''Leary'