2016-04-12 9 views
0
<% 
    sqlStr="select lecturer2.name,newroom.roomno"; 
    sqlStr+="from lecturer2,newroom"; 
    sqlStr+="where lecturer2.dept<>newroom.dept and newroom.strength>0"; 
    sqlStr+="group by lecturer2.name"; 
    rset=stmt.executeQuery(sqlStr); 
    while (rset.next()) { 
%> 
    <tr> 
    <td><%= rset.getString("name") %></td> 
    <td><%= rset.getInt("age") %></td> 
    <td><%= rset.getString("dept") %></td> 
    </tr> 
    <%  
    } 
%> 

Ich Begegnung ein FehlerJSP Abfrage Fehler

:java.sql.SQLSyntaxErrorException: Syntax error: Encountered "." at column 1

+1

Unrelated, aber: do ** nicht ** setzen SQL-Abfragen in eine JSP-Seite. Und tue ** nicht ** Java-Code in eine JSP-Seite. –

Antwort

1

Haben Sie bei der String-Wert zur Laufzeit ausgesehen hat?

Ihnen fehlen Leerzeichen aus Ihren Zeichenfolgen, so dass sie den Text zusammenführen.

sqlStr="select lecturer2.name,newroom.roomno"; 
sqlStr+="from lecturer2,newroom"; 
sqlStr+="where lecturer2.dept<>newroom.dept and newroom.strength>0"; 
sqlStr+="group by lecturer2.name"; 

bewirkt:

"select lecturer2.name,newroom.roomnofrom lecturer2,newroomwhere lecturer2.dept<>newroom.dept and newroom.strength>0group by lecturer2.name" 

einige Räume zum Ende jeder Zeile in die Saiten hinzufügen:

sqlStr="select lecturer2.name,newroom.roomno "; 
sqlStr+="from lecturer2,newroom "; 
sqlStr+="where lecturer2.dept <> newroom.dept and newroom.strength>0 "; 
sqlStr+="group by lecturer2.name";