|
|
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Это первая прога на java. В порядке знакомства с java. Все вроде хорошо и вдруг уперся в тупик. При обновлении RowSet а из формы имеются записи с пустой датой и в этом случае возникает exception. Код: java 1. Если SqlDate(sd)=null - исключение. Как обойти? Кто подскажет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 11:19:12 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
О.Сергей, Проверить перед вызовом.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 12:04:25 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
Petro123О.Сергей, Проверить перед вызовом.. Проверить можно, но что дальше? Если пользователь удалил дату на форме, как ее удалить в RowSet? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 12:19:00 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
Блин, ну пустое значение в базе это NULL. Соответствующие JDBC методы setNull() updateNull() wasNull() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 12:22:10 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
BlazkowiczБлин, ну пустое значение в базе это NULL. Соответствующие JDBC методы setNull() updateNull() wasNull() С базой все понятно, вопрос как ввести в CachedRowSet в поле типа Date значение NULL. CachedRowSet не связан с базой, коннект к базе закрыт. В поле String NULL вводится запросто Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 12:40:36 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
О.СергейС базой все понятно Почему тогда выше ни слова про NULL? О.Сергейвопрос как ввести в CachedRowSet в поле типа Date значение NULL. Попробуйте читать то что вам отвечают до конца, а не только первое прежложение. О.СергейCachedRowSet не связан с базой, коннект к базе закрыт. Это радикально меняет JDBC API. О.СергейВ поле String NULL вводится запросто Код: java 1. JDBC драйвер старается как может. Но справляется не везде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 12:49:16 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
Вот сам себе и ответил. После проверки на NULL использовать Код: java 1. для поля типа Date. Как-то кривовато, но работает! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 12:49:39 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
О.СергейВот сам себе и ответил. После проверки на NULL использовать Код: java 1. для поля типа Date. Как-то кривовато, но работает! facepalm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 12:50:47 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, JDBC драйвер зесь ни при чем. CachedRowSet - берет данные из ResultSet, который работает с драйвером. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 12:57:52 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
О.СергейJDBC драйвер зесь ни при чем. Да, ну? А кто же выкидывает исключение при updateDate(null)? Давайте что ли stacktrace посмотрим чтобы не быть голословными. А за одно и поищем кто же обрабатывает null значение при updateString. О.СергейCachedRowSet - берет данные из ResultSet, который работает с драйвером. CachedRowSet - это интерфейс. Вопрос ведь не в том откуда он берет данные, а в том где он их потом хранит. Реализацией может быть как CachedRowSetImpl из JDK, так и аналогичные классы драйвера. В которые нужно смотреть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 13:02:37 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, я извиняюсь, что не указал, у меня используется CachedRowSetImpl из библиотеки sun. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 13:09:24 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
О.Сергейу меня используется CachedRowSetImpl Ага. Теперь вижу. updateString() сохраняет значение как оно есть. В то время как updateDate пытается сначала конвертировать значение в необходимый тип на чем, вероятно, и обрыгивается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 13:18:10 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
Вобщем недоделанный какой-то CachedRowSet получается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 13:23:19 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
О.СергейВобщем недоделанный какой-то CachedRowSet получается. Нет. Это просто чьё-то упорное игнорирование методов для работы с NULL значениями. Обратите внимание, что ваш код теперь зависит от реализации CachedRowSet, при том что использует методы ResultSet и имеет ненулевые шансы выкинуть ещё одни исключние, если вдруг кто-то захочет использовать его вместо с ResultSet. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 13:27:52 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
BlazkowiczНет. Это просто чьё-то упорное игнорирование методов для работы с NULL значениями. Обратите внимание, что ваш код теперь зависит от реализации CachedRowSet, при том что использует методы ResultSet и имеет ненулевые шансы выкинуть ещё одни исключние, если вдруг кто-то захочет использовать его вместо с ResultSet. Почему нет? Одно то что updateString() обрабатывает NULL, а другие udateXXX() нет, уже не логично, и следовательно не додумано, не доделано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 13:48:54 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
О.СергейПочему нет? Одно то что updateString() обрабатывает NULL, а другие udateXXX() нет, уже не логично, и следовательно не додумано, не доделано. Не верно. Там никто не обрабатывает null вообще. Потому что в JDBC никто null значениями не увлекается, так как есть явные методы работы с NULL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 13:50:47 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
Не знаю кто чем увлекается, я просил совета, как обойти эту ситуацию с пустой датой - ответа не получил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 13:57:44 |
|
||
|
CachedRowSet .updateDate
|
|||
|---|---|---|---|
|
#18+
О.СергейНе знаю кто чем увлекается, я просил совета, как обойти эту ситуацию с пустой датой - ответа не получил. А это я для кого писал 15230876 ? Используйте updateNull() для null значений и не важно какой там тип. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2013, 14:01:20 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=197&tid=2128082]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
55ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 347ms |

| 0 / 0 |
