改成 set @sql = 'update AthleteInfor set ' +' item'+Rtrim(@num)+'='''+Rtrim(@itemname)+''' where AthleteNum='''+Rtrim(@athletenum)+''''
解决方案 »
- 动态SQL,各位大牛帮忙看看
- datetime字段 的 “2008-10-30 15:30:00" 这样的 值,我想在查询语句里的到 这个时间的10分钟之前的值如”2008-10-30 15:20:00“
- 关系运算的安全限制,菜鸟的问题。
- 我在装sql server 2000时出现这个问题:服务器组件在此系统上不受支持,只能安装客户端!怎么解决啊?
- 数据库导出xml(急)
- 数据库备份还原问题?????
- 临时表存在性判断
- 十万火急!在select语句中如何取出数据时按“字段1”排序以后再按“字段2”排序?
- 各位大大,如何判断服务器是不是分发服务器,是否建立了分发数据库?
- sql 看需求
- 在触发器或后台中如何判断当前的记录修改了哪个字段的值?
- 关于安装SQL Server2005问题求救
CREATE PROCEDURE sm_test
@athletenum char(10),
@itemname varchar(50),
@num int -- 根据num的值(1,2...)来确定更新列item1,item2...
AS
declare @sql char(100)
set @sql = 'update AthleteInfor set ' +' item'+Rtrim(@num)+'='''+Rtrim(@itemname)+''' where AthleteNum='''+Rtrim(@athletenum)+'''' --Rtrim(@itemname)前后的单引号均改为3个
exec(@sql)
GO
@itemname varchar(50),
@num int, -- 根据num的值(1,2...)来确定更新列item1,item2...
@sql char(100)
Set @athletenum='' --给上值
Set @itemname='' --给上值
Set @num=1 --给上值
set @sql = 'update AthleteInfor set ' +' item'+Rtrim(@num)+'='+Rtrim(@itemname)+' where AthleteNum='''+Rtrim(@athletenum)+''''
Select @sqlDeclare @athletenum char(10),
@itemname varchar(50),
@num int, -- 根据num的值(1,2...)来确定更新列item1,item2...
@sql char(100)
Set @athletenum='' --给上值
Set @itemname='' --给上值
Set @num=1 --给上值
set @sql = 'update AthleteInfor set ' +' item'+Rtrim(@num)+'='''+Rtrim(@itemname)+''' where AthleteNum='''+Rtrim(@athletenum)+''''
Select @sql看看得出来的SQL语句,你就会明白了。