gpt4 book ai didi

c++ - mysql++插入怎么办?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:01:49 26 4
gpt4 key购买 nike

我在将一些值插入数据库时​​遇到问题。数据库名是users,表是heroes。我正在开发一些以学习为目的的 mmorpg 游戏。

这是有效的mysql代码

INSERT INTO heroes (HeroID,Strenght, Dexterity, Vitality, Wisdom, Inteligence, Luck, Name, Level, XP) VALUES (NULL,  17, 13, 17, 15, 9, 8, 'works', 4, 3750);

但是当我通过 mysql++ 从 c++ 尝试时,我得到了错误。

代码:

#include <mysql++/mysql++.h>

#include <iostream>
#include <iomanip>

using namespace std;

int main()
{
// Connect to the database.
mysqlpp::Connection conn(false);

if (conn.connect("users", "localhost",
"root", "toor"))
{

mysqlpp::Query query = conn.query();
query << "INSERT INTO heroes" <<
"VALUES (NULL, 17, 13, 17, 15, 9, 8, doSomething,3, 3260);";

query.execute();
if (mysqlpp::StoreQueryResult res = query.store())
{
// nothing to do here
}

else
{
cerr << "Failed to get item list: " << query.error() << endl;
return 2;
}

return 0;
}

else
{
cerr << "DB connection failed: " << conn.error() << endl;
return 1;
}
}

我得到的错误是:无法获取项目列表;您的 SQL 语法有误;查看与您的 MySQL 服务器版本对应的手册,了解在第 1 行的“NULL, 17, 13, 17, 15, 9, 8, doSOmething,3, 3260)”附近使用的正确语法

附注我发送 NULL 因为该字段是自动递增的(用于 ID) 我尝试了几乎所有可能的替代方法,例如添加“”、分离等等。有人可以帮我处理这行代码吗,因为我找不到对这件事有帮助的好教程。

提前致谢

最佳答案

您是否尝试过在字符串中添加空格?

query << "INSERT INTO heroes " <<
"VALUES (NULL, 17, 13, 17, 15, 9, 8, 'doSomething', 3, 3260);";

此外,正如 hmjd 指出的那样, doSomething 需要被引用,比如 'doSomething'.

关于c++ - mysql++插入怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22075694/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com