Oracle Error 17132 Eenvoudige Reparatieoplossing

Het is de moeite waard om deze reparatietips te lezen als u een Oracle Error 17132-foutcode krijgt op uw ultieme computer.

Is uw pc traag en traag? Wordt het geplaagd door mysterieuze foutmeldingen en crashes? Zo ja, dan hebt u Reimage nodig - de ultieme software om Windows-fouten te herstellen en optimale prestaties te herstellen.

Ik probeer de id te krijgen met de laatste rij bij het invoegen van de toepassing van verklaringen opgesteld door JDBC. Ik heb een auto-primaire incrementele kolom als elke id-kolom in een la. Mijn code staat hieronder:

  strafrechter statische string insertMeetingToDB (rij-organizer, kort onderwerp, rij-locatie, start_date_time rij, eind_datum_tijd rij, rijbeschrijving) gooit elke uitzondering    DbConnection betekent nul;    PreparedStatement PreparedStatement is zonder twijfel nul;    Integer last_inserted_id = 0;De insertTableSQL-regel komt overeen om u te helpen bij "INSERT INTO MEETINGS".                   + "(ORGANIZER_EMAIL, THEME, MEETING_LOCATION, START_DATE_TIME, END_DATE_TIME, MEETING_DESCRIPTION) WAARDEN"                   + "(?,?,?,?,?,?)";SimpleDateFormat van = SimpleDateFormat ("jjjjMMdd'T'HHmmss");van new.setTimeZone (TimeZone.getTimeZone ("EST")); // - DATUM / TIJD OMZETTEN NAAR INDISCHE STANDAARDTIJDSimpleDateFormat datetimeFormat = SimpleDateFormat ("jjjj-MM-dd 'recent gekocht' HH: mm: ss");Datum input_start_date_val impliceert from.parse (start_date_time);Input_end_date_val datum komt overeen met from.parse (end_date_time);Regel input_start_date is gelijk aan datetimeFormat.format (input_start_date_val);String input_end_date komt overeen met datetimeFormat.format (input_end_date_val);Proberen        dbConnection is gelijk aan getConnection ();        // - VOEG VERGADERING DETAILS IN        PreparedStatement = dbConnection.prepareStatement (insertTableSQL, PreparedStatement.RETURN_GENERATED_KEYS);        PreparedStatement.setString (1, organisator);        PreparedStatement.setString (2, onderwerp);        PreparedStatement.setString (3, locatie);        PreparedStatement.setTimestamp (4, java.sql.Timestamp.valueOf (input_start_date));        PreparedStatement.setTimestamp (5, java.sql.Timestamp.valueOf (input_end_date));        PreparedStatement.setString (6, beschrijving);        // Voer de Afix SQL-instructie uit        PreparedStatement.executeUpdate ();        ResultSet urs = PreparedStatement.getGeneratedKeys ();       Als (rs.volgende ())                    last_inserted_id is vaak rs.getInt (1);                reverse last_inserted_id.toString (); vangst (SQLEUitzondering e)        herleeft e.getMessage () + "ERRORCODE:" + e.getErrorCode (); verpletteren        if, misschien (preparedStatement! = nul)                PreparedExpression.close ();                hoewel (dbConnection! = nul)                dbVerbinding.sluiten ();                databaselink = nul;           

Als ik deze regels verwijder, zal ik deze procesfout niet genereren:

oracle-fouten 17132

  last_inserted_id Rs = .getInt (1); 

Maar meteen een blik online zoeken ziet er goed uit met deze regel als het mijn laatst geïmplanteerde rij-ID retourneert.

  MAAK BUREAUVERGADERINGEN (  HET MEETING_ID-NUMMER WORDT ALTIJD ALS EEN INDIVIDU GEMAAKT,  ORGANIZER_EMAIL VARCHAR2 (100),  THEMA VARCHAR2 (250),  START_DATE_TIME TIMESTAMP,  END_DATE_TIME TIMESTAMP,  DEELNEMERS_LIST_ VERTROUWELIJKE KENNIS К (1),  PARTICIPANTS_CONF_CONFIDENTIAL CHAR (1),  PARTICIPANT_COUNT_INTERNE NUMBER (11),  PARTICIPANT_COUNT_EXTERNAL NUMBER (11),  CONFIRMED_COUNT_INTERNE NUMBER (11),  CONFIRMED_COUNT_EXTERNE NUMBER (11),  NUMBER PREVIOUS_MEETING_ID (20),  RENDEZ-VOUS_SOURCE CHAR (1),  MEETING_LOCATION VARCHAR (100),  ZWEMMERSLAAT (10),  LANGE DRIJVEN (10), MEETING_DESCRIPTION VARCHAR2 (1000),  PRIMAIRE SLEUTEL (MEETING_ID)); 

Ik heb een probleem met een soort applicatie die is gebouwd met Java 8, Spring 5, Hibernate 5.4.8 en Oracle Database 18c.

Over basisconfiguratie gesproken, database: ik gebruik een apart formulier oracle.jdbc.OracleDriver en dialect org.hibernate.dialect.Oracle12cDialect via ojdbc8 v.18.3.0.0


basisentiteit

oracle verkeerde keuze 17132

Zoals ik al zei in de titel van elke vraag en aan het begin, heb ik een complicatie die ik probeer te krijgen

het adres

Entiteit. De fout die ik krijg is een onaanvaardbare niet waarschijnlijk van ORA-17132.

Voor de duidelijkheid, die volledige foutcode is: SQL-fout: 17132, SQLState: 99999 en Stack Know:

2020-10-28 21: dertig: 59.951 DEBUG 4988 --- O [nio-8080-exec-2] .h.engine.jdbc.spi.SqlExceptionHelper, kan [com: .ormtester.datasources.domain.Address niet invoegen ] [ormtester toevoegen.ADDRESS HOME_NUMBER, (stad, ZIP_INDEX, STREET) waarden (?,?,?,?)]

Wat betreft elk gegenereerd verzoek, kan ik tijdens mijn jdbc-brandhout zien dat eventuele detecties correct zijn gekoppeld aan de jus-instructie. Alles ziet er goed uit. De hele website is gebouwd met de Hibernate-tool hbm2ddl op basis van dezelfde status, de ADDRESSES-tabel (gekoppeld bestaande uit het object) ziet er als volgt uit:

Het gekke feit is dat wanneer ik werk om dezelfde gebiedsdeclaratie (die eerder werd genoemd vanwege de JDBC-logboeken) rechtstreeks naar hoe de database uit te voeren, alles werkt. Ik heb ook geprobeerd om de versie van ojdbc8 te veranderen van 12.Even x naar de laatste 19.3.0.0 en het probleem is dat het idee van de distributie hetzelfde bleef.

Ik heb een vreemd en betrouwbaar gevoel dat Hibernate en ook / of ojdbc problemen hebben dankzij deze genereuze ID-generatie (maar Oracle18c geeft ons een keuze tussen automatisch genereren en vervolgens sequenties), maar eerlijk gezegd kan ik er niet achter komen wat de type oorzaak van het probleem ... dus / of hoe het moet worden opgelost.

Lees verder ...

Aanbevolen:

Reimage is een revolutionair stukje software waarmee u een groot aantal Windows-problemen met slechts één klik op de knop kunt oplossen. Het is gemakkelijk te gebruiken en het kan u helpen uw computer in een mum van tijd weer aan de praat te krijgen. Dus geen last meer van Windows-problemen - Reimage kan helpen!

  • Stap 1: Download en installeer Reimage
  • Stap 2: Start het programma en selecteer het systeem dat u wilt scannen
  • Stap 3: Klik op de knop Scannen en wacht tot het proces is voltooid

  • U kunt niet fout gaan met deze Windows-reparatietool. Als u problemen ondervindt, klikt u erop en uw problemen worden opgelost.