'temperatureQuery.exec(('SELECT value FROM Status WHERE uid = %1 AND device_name = '\37777777747\37777777651\37777777672\37777777750\37777777660\37777777603' AND device_state = '\37777777745\37777777674\37777777600\37777777745\37777777620\37777777657'').arg(this->userid))' 会报错\n\nG:\Qt\Client\Smarthome_Client\information.cpp:27: error: request for member 'arg' in '('SELECT value FROM Status WHERE uid = %1 AND device_name = '\37777777747\37777777651\37777777672\37777777750\37777777660\37777777603' AND device_state = '\37777777745\37777777674\37777777600\37777777745\37777777620\37777777657')', which is of non-class type 'const char [95]'\n temperatureQuery.exec(('SELECT value FROM Status WHERE uid = %1 AND device_name = '\37777777747\37777777651\37777777672\37777777750\37777777660\37777777603' AND device_state = '\37777777745\37777777674\37777777600\37777777745\37777777620\37777777657'').arg(this->userid));\n ^\n如何解决内容:您的代码出现了括号的问题。您需要将括号放在正确的位置,以便正确调用arg()函数。您可以尝试以下更正:\n\ntemperatureQuery.exec(QString('SELECT value FROM Status WHERE uid = %1 AND device_name = '\37777777747\37777777651\37777777672\37777777750\37777777660\37777777603' AND device_state = '\37777777745\37777777674\37777777600\37777777745\37777777620\37777777657'').arg(this->userid));\n\n在这个更正后的代码中,我们将整个SQL查询语句放在QString()构造函数中,以便可以调用arg()函数来替换%1。

Qt 编程错误:temperatureQuery.exec() 函数使用 arg() 函数报错的解决方法

原文地址: https://www.cveoy.top/t/topic/qmLs 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录