Tôi đang cố gắng sử dụng các kết nối following Fastload APIIllegalStateException là gì?
... v.v. là hoàn hảo.
Tôi biết chính xác nơi nó không
...........
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
...........
ngoại lệ là
Exception in thread "main" java.lang.IllegalStateException: Sample failed.
[ODBC Teradata Driver] Invalid precision: cbColDef value out of range
Đây là của tôi mà tôi đang cố tải lên. Đó là định dạng .csv
và khi tôi mở nó qua notepad, nó trông giống như thế này
1,9,Win
2,9,Winc
3,9,Wi
Tại sao tôi có ngoại lệ này? Làm thế nào tôi có thể cải thiện nó? Theo như tôi hiểu vấn đề là pstmtFld.setAsciiStream(1, dataStream, -1);
không chấp nhận tập dữ liệu bằng cách nào đó và ném một ngoại lệ
Tôi thường ném một 'IllegalStateException' bất cứ khi nào tôi bắt được thứ gì đó" không thể xảy ra "và không có loại ngoại lệ mô tả nào khác mà tôi có thể ném. Ví dụ: giả sử tôi viết mã để hiển thị hình ảnh và hình ảnh có độ rộng tiêu cực - việc ném bất kỳ thứ gì khác sẽ tệ hơn, vì vậy tôi có thể viết ngoại lệ không được kiểm soát của riêng mình (thực hành được khuyến nghị), nhưng sau đó bạn có thể xem xét thay vào đó) hoặc sử dụng 'IllegalStateException' được tích hợp sẵn. – tucuxi
Theo http://docs.oracle.com/javase/7/docs/api/java/sql/PreparedStatement.html#setAsciiStream%28int,%20java.io.InputStream,%20int%29, có thể là chiều dài tập tin (-1) đang gây ra điều này? – Lopina