java.sql.SQLException :ORA-01403 :aucune donnée trouvée dans struct.getDescriptor().getMetaData()

StackOverflow https://stackoverflow.com//questions/20027897

  •  21-12-2019
  •  | 
  •  

Question

J'utilise oracle.sql.STRUCT classe.En suivant le code :

ResultSetMetaData metaData = struct.getDescriptor().getMetaData();

J'obtiens cette exception :

java.sql.SQLException: ORA-01403: no data found
ORA-06512: at line 1
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:745) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:218) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]
at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:969) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1190) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3370) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3476) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]
at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4400) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]
at oracle.jdbc.oracore.OracleTypeADT.initADTAttrNames(OracleTypeADT.java:2423) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]
at oracle.jdbc.oracore.OracleTypeADT.getAttributeName(OracleTypeADT.java:2246) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]
at oracle.jdbc.driver.StructMetaData.getColumnName(StructMetaData.java:175) ~[ojdbc14.jar:Oracle JDBC Driver version - "10.2.0.4.0"]

Pourquoi l'exception ci-dessus s'est produite ?Qu'est-ce qu'une solution ?

Était-ce utile?

La solution

J'ai trouvé une solution.Le problème est que l'utilisateur avec lequel mon application se connecte à la base de données n'a pas d'autorisation pour le type de cible.J'ai ajouté une subvention à l'utilisateur et l'application a bien fonctionné.

Autres conseils

J'ai trouvé une autre raison à ce problème.Lorsque j'écris le nom des objets en minuscules, Oracle lève une exception, mais lorsque le problème des noms d'objets en majuscules complets est résolu

Dans mon cas, cela est dû à un déclencheur d'audit qui vérifie si les valeurs ont une valeur NULL.

Si la valeur de l'expression SQL est NULL, cette erreur est déclenchée.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top