我正在开发一个带有这个sql代码的qt程序,代码的逻辑是,我需要获取一些引入字段正确的信息。问题是,我试图获取nombre.padres
的其中一个字段位于另一个表padres
中,而信息来源的主表是usuarios
所以usuarios
中的值1}}是something@something.com
,而padres
中的值something@something.com
与我想要获得的文本字段nombre
(nombre.padres
)相关联。< / p>
我详细阐述的代码就是这个:
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();
但是给了我以下错误:
您的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册,以获得正确的语法,以便在内部加入&#39; INNER JOIN padres on usuarios.idmail = padres.email WHERE(padres.nombre =&#39;&#39; OR u&#39 ;第1行QMYSQL:无法执行查询
在这两个表格中都有一个名为nombre
的专栏,这就是为什么我们nombre.usuarios
有问题,而nombre.padres
导致我这个问题。
总结当用户输入something@something
时,我希望从表padres
获取nombre.padres
的链接名称,但是使用该查询我还想从{{{{}}获取多个信息1}}表。
答案 0 :(得分:1)
如果您打印出正在运行的查询,您将看到它以:
开头FROM
这显然在语法上不正确(滚动查看 Sub ImportWordTable()
Dim sPfad As String
Dim appWord As Object
Dim strDatei As String
Dim TableNo As Integer 'table number in Word
Dim iRow As Long 'row index in Word
Dim jRow As Long 'row index in Excel
Dim iCol As Integer 'column index in Excel
sPfad = "C:\Users\tim\Test2\" '<== adjust path
Application.ScreenUpdating = False
Set appWord = CreateObject("Word.Application")
appWord.Visible = True
strDatei = Dir(sPfad & "*.doc*")
Do While strDatei <> ""
appWord.Documents.Open sPfad & strDatei
'Read all tables of the document body
If appWord.ActiveDocument.tables.Count = 0 Then
MsgBox "This document contains no tables", _
vbExclamation, "Import Word Table"
Else
jRow = 0
Sheets.Add after:=Sheets(Worksheets.Count)
ActiveSheet.Name = strDatei & "Label-Text"
For TableNo = 1 To appWord.ActiveDocument.tables.Count
With appWord.ActiveDocument.tables(TableNo)
'copy cell contents from Word table cells to Excel cells
For iRow = 1 To .Rows.Count
jRow = jRow + 1
For iCol = 1 To .Columns.Count
On Error Resume Next
ActiveSheet.Cells(jRow, iCol) = WorksheetFunction.Clean(.cell(iRow, iCol).Range.Text)
On Error GoTo 0
Next iCol
Next iRow
End With
jRow = jRow + 1
Next TableNo
End If
appWord.ActiveDocument.Close savechanges:=False
strDatei = Dir
Loop
appWord.Quit
Set appWord = Nothing
End Sub
)。
了解如何进行一些基本的调试。