2017-04-23 14 views
-2

私はこのsqlコードを持つqtでプログラムを開発していますが、コードのロジックは、導入されたフィールドが正しいところで情報を取得する必要があります。問題は、そうusuariosの値が[email protected]で、padresに値[email protected]がテキストフィールドIとリンクされている私はnombre.padresを取得しようとしている分野の一つは、別のテーブルpadresであるとの情報が来るメインテーブルがusuariosであるということですこの場合は​​(nombre.padres)になりたいオールライトである私たちはnombre.usuariosを持っている理由です​​という列があります両方のテーブルにSQLは内部結合が機能していない

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

私は精緻コードは、このいずれかになります。

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(); 

しかし、私は次のエラーを与えています私に問題を引き起こしているnombre.padres

私はまたusuariosテーブルから複数の情報を取得したいとき、ユーザ入力nombre.padresが、そのクエリとテーブルpadresから[email protected]にリンクされている名前を取得したいまとめます。明らかに文法的に間違っている

SELECT usuarios.id, usuarios.nombre, usuarios.curso, usuarios.grupo, usuarios.alergias, padres.nombreFROM usuarios 

FROMを見るために上をスクロール):

答えて

1

あなたが実行しているクエリを印刷した場合、あなたはそれがで始まっていることがわかります。

基本的なデバッグの方法を学びます。

+0

あなたの答えをありがとう、あなたは正しいです。いくつかの礼儀正しく感謝される:) –

関連する問題