sql >> Database >  >> RDS >> Oracle

executeSqlScript mislukt met Spring voor PL/SQL-blok

Het lijkt erop dat u functies van PL/SQL in uw script probeert te gebruiken.

De executeSqlScript(..) methoden in AbstractTransactionalJUnit4SpringContextTests intern delegeren aan ScriptUtils.executeSqlScript(..) achter de schermen, en ScriptUtils ondersteunt alleen pure SQL-scripts.

U zult dus waarschijnlijk moeten overschakelen naar eenvoudige SQL-instructies en een ander mechanisme moeten vinden om de waarde van de account__id op te halen. uit table1 .

Een andere optie (die ik niet heb) geprobeerd) zou zijn om het scheidingsteken voor de instructie te wijzigen in iets anders dan ";" (bijv. "end;" ), maar dat kan niet via AbstractTransactionalJUnit4SpringContextTests.executeSqlScript . In plaats daarvan moet u ScriptUtils.executeSqlScript(..) aanroepen of (misschien bij voorkeur) gebruik een ResourceDatabasePopulator .




  1. Alleen-lezen- en lees-schrijftransacties splitsen met JPA en Hibernate

  2. Hoe een MySQL-database naar JSON exporteren?

  3. De netwerkadapter kon geen verbinding tot stand brengen - Oracle 11g

  4. Spammers detecteren met MySQL