Qu'est-ce que l'exception IllegalStateException?

Je suis en train d'utiliser le suivant Fastload API

connexion ... etc est parfait.


Je sais exactement où il échoue

 ...........
 System.out.println(" Streaming " + dataFile);
 pstmtFld.setAsciiStream(1, dataStream, -1); //This line fails
 System.out.println("check the above line"); //This does not go to console
 ...........

Exception est

Exception in thread "main" java.lang.IllegalStateException: Sample failed.

[ODBC Teradata Driver] Invalid precision: cbColDef value out of range


Voici mon tableau que je suis en train de télécharger. C'est un .csv format, et quand je l'ouvre via le bloc-notes ressembler à ceci

1,9,Win
2,9,Winc
3,9,Wi

Pourquoi cette exception? Comment puis-je l'améliorer? Autant je comprends le problème, c'est pstmtFld.setAsciiStream(1, dataStream, -1); ne pas accepter le jeu de données en quelque sorte, et de lever une exception

  • J'ai l'habitude de jeter un IllegalStateException chaque fois que j'attrape quelque chose qui "ne peut pas se faire" et il n'y a pas d'autre-descriptif type d'exception que je peux la jeter. Par exemple, dis-je écrire le code pour afficher une image, et l'image a une largeur négative - de jeter tout le reste serait le pire, donc je peux écrire mon propre décoché exception (pratique recommandée, mais alors vous pouvez envisager de faire un checked exception au lieu de cela), ou utiliser le haut- IllegalStateException un.
  • Selon docs.oracle.com/javase/7/docs/api/java/sql/..., est-il possible que la longueur du fichier (-1) est la cause?