我正在开发一个带有这个sql代码的qt程序,代码的逻辑是,我需要得到一些信息,其中任何引入的字段都是正确的。问题是我想要得到的一个字段nombre.padres
在另一个表padres
中,并且信息出现的主表是usuarios
因此usuarios
中的值是[email protected]
并且padres
中的值[email protected]
与文本字段i相关联想在这种情况下得到(nombre.padres
)。SQL准备的innerjoin不起作用
我阐述的代码是这一个:
QSqlQuery query;
query.prepare("SELECT usuarios.id, usuarios.nombre, usuarios.curso, usuarios.grupo, usuarios.alergias, padres.nombre"
"FROM usuarios INNER JOIN padres ON usuarios.idmail = padres.email WHERE (padres.nombre=:apellidointro OR"
" usuarios.nombre=:nombreintro OR usuarios.id=:idintro OR usuarios.curso=:cursointro OR usuarios.grupo=:grupointro "
"OR usuarios.alergias=:alergiasintro)");
query.bindValue(":nombreintro", ui->lineEdit_3->text());
query.bindValue(":apellidointro", ui->lineEdit_4->text());
query.bindValue(":idintro", ui->lineEdit_5->text());
query.bindValue(":cursointro", ui->comboBox_2->currentText());
query.bindValue(":grupointro", ui->comboBox->currentText());
query.bindValue(":alergiasintro", ui->lineEdit_6->text());
query.exec();
不过是给我下面的错误:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INNER JOIN padres ON usuarios.idmail = padres.email WHERE (padres.nombre='' OR u' at line 1 QMYSQL: Unable to execute query
在两个表中有一个名为列,这就是为什么我们有nombre.usuarios
这还好吧和nombre.padres
这是造成我的问题。
总结我想从表中得到padres
链接名称[email protected]
当用户输入nombre.padres
但该查询我也想从usuarios
表中的多个信息。
谢谢你的回答,你是对的。有些礼貌将不胜感激:) –