我正在使用Qt,我已经编写了c ++代码,我已经连接了sqlite database.i想在数据库中插入名称
.mydiv
但在db我只找到名字,不是你好;
请帮帮我..提前谢谢你
答案 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>
。