使用加法或减法更新值

时间:2017-07-17 19:56:07

标签: c# mysql sql

我正在尝试添加甚至删除值并使用新值更新表。 假设我有一个有5分的经纪人。我不想添加一个新行或者用现有的新值写下另外5个点。我希望它是5 + 5分,5 - 5分。然后更新列中的值。

到目前为止,我找到了

("Insert Into Bee_Sheet(Agents_Name, Points, Date_added)Values(" + AN + "','" + PNumber + "','" + DateTime.Now + "') ON DUPLICATE KEY UPDATE Points=VALUES(Points)-VALUES(PNumber) 

但是我在我的AN上出错了,这是我们在AD中的代理商名称。告诉我他们名字附近有一个语法错误,我们使用first.last name scheme。这不应该影响到来。

所以我的问题是,重写SQL命令以便能够从值中添加或删除某个数量然后更新它的最佳方法是什么?

如果您需要更多信息,请告诉我们。

1 个答案:

答案 0 :(得分:0)

您的语法错误:您的查询在您的" AN"之前缺少一个开头的单引号。值。

有关更新价值的实际问题,您似乎正在走上正轨。当然,假设您的Bee_Sheet表上有unique indexprimary key。如果您没有唯一索引或pkey,那么您的查询将只会执行插入。

我唯一的建议是你的UPDATE可能应该将PNumber添加到Points,而不是减去它。

Insert Into Bee_Sheet
    (Agents_Name, Points, Date_added)
Values
    ('" + AN + "','" + PNumber + "','" + DateTime.Now + "')
 ON DUPLICATE KEY 
    UPDATE
        Points=VALUES(Points)+VALUES(PNumber)