2015-04-13 13 views
6

Po uruchomieniu tego SQL:Błąd składni w instrukcji SQL - błąd H2 42001

select TimeInterval, 
     ((((Timer*60)/1.0)*100)/((10.0*60)/60.0)) as 'Throughput-run_1_8_11' 
from StatExternalData, StatisticDefinition 
where StatisticDefinition.ID=StatExternalData.StatDefId 
     and StatisticName='PSI_CompTran_Successful_Cnt' 
order by TimeInterval asc 

otrzymuję ten błąd:

"select TimeInterval, ((((Timer*60)/1.0)*100)/((10.0*60)/60.0)) as 'Throughput-run_1_8_11'[*] from StatExternalData, StatisticDefinition where StatisticDefinition.ID=StatExternalData.StatDefId and StatisticName='PSI_CompTran_Successful_Cnt' order by TimeInterval asc"; 
expected "identifier"; [42001-185] 

Mam zorientowali się, że [*] wskazuje co część instrukcji jest niepoprawna, a kod błędu H2 42001 oznacza nieprawidłowe polecenie SQL, ale od tygodni walę głową w ścianę, próbując dojść do tego, na czym polega problem, czy ktoś ma pomysł?

+0

Czy próbowałeś załączając alias kolumny między podwójnym cudzysłowie „„'' zamiast pojedynczych te ('” „')? – Barranka

+0

również, staraj się unikać używania myślników '-'. Spróbuj ** 'Throughput_run_1_8_11' ** zamiast' Throughput-run_1_8_11' – Barranka

+3

'jak 'Throughput-run_1_8_11'' jest nieprawidłowym SQL. Pojedyncze cytaty dotyczą literałów łańcuchowych. Podwójne cytaty są dla identyfikatorów –

Odpowiedz

0

miałem ten sam problem:

podmiot, wyglądał tak:

@Entity 
public class ShopCommentRating { 

@NotNull 
private Boolean like; 

} 

Powstały Zapytanie zawierał [*]

Aby usunąć błąd, musiałem zmienić nazwę pola do czegoś. tak:

@Entity 
public class ShopCommentRating { 

@NotNull 
private Boolean commentLike; 

} 

'lower case case wielbłąd' nazwa

Powiązane problemy