sql >> Database teknologi >  >> RDS >> Sqlserver

Hentning af returværdien fra JDBC MSSQL

Bozhos 2. reviderede svar var tæt på, men ikke helt der. Det førte mig dog til svaret.

Tager vi det kodeeksempel, jeg startede med, ender vi med:

CallableStatement proc = connection.prepareCall("{ ? = call dbo.mySproc() }");
proc.registerOutParameter(1, Types.INTEGER);
proc.execute();
int returnValue = proc.getInt(1);

Nøgleelementerne her er "? =" foran "opkaldet" i prepareCall funktion som opsætter et sted for returværdien og registerOutputParameter . Det skal registreres som et heltal, da returværdien altid er en int (i hvert fald i SQL Server, måske er det anderledes i andre DB'er). Du skal derfor få det ved hjælp af getInt . Jeg testede denne metode, og den virker.



  1. Android SQLiteOpenHelper:Hvorfor kaldes onCreate()-metoden ikke?

  2. Konstruktion af en datamodel for et parkeringspladsstyringssystem

  3. MySQL udenlandsk nøgle begrænsninger, kaskade sletning

  4. Fejl ved brug af en OLAP-forbindelse:MSOLAP-udbyderen er ikke registreret på den lokale maskine...