更新查询以将字符串与列名称匹配

时间:2013-12-16 20:05:05

标签: sql sql-server-ce

我的程序中有以下用户界面

enter image description here

然后我有一个包含以下列的表

enter image description here

我想要做的是编写一个查询,查看我的组合框中的“Item”字符串,然后更新上面的列,在本例中为Handbook,其中通用名称与列匹配。记录应该每次更新,换句话说,我想每次都替换信息。

我不知道从哪里开始。这是我用来创建我要更新的表的查询。

    SELECT repName.Rep_Name, repName.Handbooks, repName.Leaves
FROM     repName INNER JOIN
                  Positions ON repName.Job_Code = Positions.Job_Code
ORDER BY repName.Rep_Name

如果这有点帮助

1 个答案:

答案 0 :(得分:1)

我的第一个猜测是,正如我在上面的评论中所说,你的设计并不好。

尽管如果在你的场景中你仍然需要做你想要的,那么你可以使用动态sql:

DECLARE @sqlCommand varchar(1000)
DECLARE @column varchar(50)

SET @column = 'foo' 
SET @value = 'bar'

SET @sqlCommand = 'UPDATE TABLE SET ' + @column + ' = ' + @value 
EXEC (@sqlCommand)

您可以使用参数传递值,或者更适合您的情况。