SQL语法更新多列时出错

时间:2018-01-12 19:01:18

标签: c# mysql

我正在尝试使用C#更新MySQL表,但是我收到了错误

  

您的SQL语法有错误;检查与您的MariaDB服务器版本对应的手册,以便在'0'附近使用正确的语法,exp_total ='0',exp_perkPoints ='0'在第1行WHERE uid ='0'

以下是我尝试使用插入的变量值执行的完整查询。

UPDATE players SET cash='0', bankacc='0', coplevel='0',
    mediclevel='0', adminlevel='0',  arrested='0', blacklist='0',
    civ_alive='0, exp_level='0', exp_total='0', exp_perkPoints='0'
    WHERE uid='0'

我已经检查过列名是否正确,它们是。

我似乎无法发现我的查询无效,我确信这是基本的。有人能发现它有什么问题吗?

干杯

编辑 - 在uid ='0之后有一个单引号但是它似乎在帖子中消失了

1 个答案:

答案 0 :(得分:4)

缺少'零以下:近civ_alive =' 0

原:

UPDATE players SET cash='0', bankacc='0', coplevel='0', mediclevel='0', 
    adminlevel='0', arrested='0', blacklist='0', civ_alive='0, 
    exp_level='0', exp_total='0', exp_perkPoints='0'
    WHERE uid='0'

应该避免错误语法:

UPDATE players SET cash='0', bankacc='0', coplevel='0', mediclevel='0', 
    adminlevel='0', arrested='0', blacklist='0', civ_alive='0', exp_level='0', 
    exp_total='0', exp_perkPoints='0'
    WHERE uid='0'

关于mariadb注释 - mariadb是一个mysql的分支,因此它们非常相似,因此不会产生问题。