gpt4 book ai didi

C++/Qt 多行字符串;还有,多个查询

转载 作者:太空狗 更新时间:2023-10-29 20:31:45 32 4
gpt4 key购买 nike

关于 C++/Qt 的两个 [希望] 快速问题。以下是否适合在多行中写入字符串?

QString strQuery;
strQuery="\
CREATE TABLE foo\
(bar integer primary key,\
baz varchar(20))";

我相信这是对的,但在 Qt Creator 中它不会突出显示,好像它是一个大字符串。

其次,QSqlQuery.exec() 会在单次执行中运行多个查询还是每个查询都需要通过 exec() 运行?例如,我正在尝试这样的事情:

QSqlQuery query;
QString strQuery;
strQuery="\
CREATE TABLE foo \
(bar integer primary key,\
baz varchar(10));\
CREATE TABLE herp\
(de integer primary key, \
derp varchar(10))";
query.exec(strQuery);

据我所知,只有第一个表正在创建。我不知道这是否与我的多行字符串、我的数据库类型 (SQLite) 或一般的 QSqlQuery 相关。

感谢您的帮助!

最佳答案

我认为这将是正确的方式:

QString strQuery;
strQuery="CREATE TABLE foo " \
"(bar integer primary key, " \
"baz varchar(20));";
// with this style `strQuery` will be single line, like "CREATE TABLE foo (bar integer primary key, baz varchar(20));"

QSqlQuery query;

QString strQuery;
strQuery="CREATE TABLE foo " \
"(bar integer primary key, " \
"baz varchar(10));"
query.exec(strQuery);

strQuery="CREATE TABLE herp " \
"(de integer primary key, " \
"derp varchar(10))";
query.exec(strQuery);

关于C++/Qt 多行字符串;还有,多个查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3572294/

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