sql >> Database teknologi >  >> RDS >> Oracle

ORA-00911:Ugyldigt tegn via ODBC, Adhoc SQL - i kommentarer?

Hvis en kommentar indeholder hele ordet end så ser Oracle-driveren (eller serveren) ud til at tolke dette dårligt. Hvis du fjerner end ord i kommentaren, udføres sætningen korrekt.

Jeg tror, ​​det skyldes, at den ikke forventer et semikolon efter at have oplevet et 'slut'-direktiv (selvom det ikke burde analysere en kommentar).

Følgende sætning udføres uden problemer og returnerer 7.

/* end */\nSELECT 7 FROM MyTable 

Følgende erklæring rejser ORA-00911

/* end */\nSELECT 6 FROM MyTable;

Følgende udsagn returnerer 5

/**/\nSELECT 5 FROM MyTable;

Det er sandsynligt, at Oracle analyserer kommentaren, fordi det er sådan, den anvender "tip" til joinoperation/optimering.




  1. libclntsh.so.11.1:kan ikke åbne en delt objektfil.

  2. Datamodellering for samme tabeller med samme kolonner

  3. Sådan installeres flere PostgreSQL-servere på RedHat Linux

  4. Oracle-tal til C# decimal