C++ MySQL prepareStatement
C++ MySQL prepareStatement
sql::Connection *con;
sql::PreparedStatement *pstmt;
//connect
pstmt = con->prepareStatement("UPDATE table_people SET name=?, age=?");
pstmt->setString(1, s);
pstmt->setInt(2, age());
pstmt->execute();
std::string s
是输入字符串,列name
为 VARCHAR
, age
是 INT
代码按预期更新所有行。age
是正确的,但name
未正确更新,并且保存了怪异的符号。为什么,请?
由于我的评论似乎是正确的,我将其发布为答案:)
使用
pstmt->setString(1, s.c_str());
(即,通过实际的C风格字符串,而不是std::string
)。
i think 我知道为什么要解决这个问题的解释,但是由于我对解释的解释不确定,所以请在我的问题下查看我的评论,以了解我的想法。
相关文章:
- 没有找到相关文章