如何在Qt cpp中的SQlite数据库中插入变量的值

时间:2017-07-05 06:39:21

标签: c++ mysql qt sqlite

我正在使用Qt,我已经编写了c ++代码,我已经连接了sqlite database.i想在数据库中插入名称

.mydiv

但在db我只找到名字,不是你好;

请帮帮我..提前谢谢你

2 个答案:

答案 0 :(得分:0)

C ++和SQL是两种不同的编程语言,可以在不同的环境中执行。这意味着C ++对象在SQL中不可见。

理论上,可以构造包含SQL命令的字符串,以便将name变量的值直接插入其中:

qry.prepare("INSERT INTO s_no (Name,Status) VALUES('" + name + "', '1')");  // don't do this

但是,如果名称包含引号,则会爆炸。使用其他代码可以转义引号,但是将变量值引入SQL查询的更好方法是使用参数:

qry.prepare("INSERT INTO s_no (Name,Status) VALUES(?, '1')");
qry.bindValue(0, name);

(这是在查询中使用blob值的唯一合理方法。)

答案 1 :(得分:-1)

尝试将名称命名为QString。您可以使用:QString name2 = QString::fromStdString(name);将std :: string更改为QString。别忘了包括:#include <QString>