![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| seth |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 4.6.2006 Репутация: нет Всего: 1 |
можно ли делать
cstmt.setString(1, "1"); вместо cstmt.setInt(1, 1); ?? или например дату записывать тоже через cstmt.setString() ?? |
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 24 Всего: 151 |
Скорее всего, нет. Однако утверждать категорично не буду - я сегодня узнал, что PL/SQL неявно пытается кастить даже строку в число
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| seth |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 4.6.2006 Репутация: нет Всего: 1 |
ну а поидее можно ж cstmt.setObject() с указанием Типа?
|
|||
|
||||
| jitm |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 11.10.2006 Репутация: 2 Всего: 3 |
Вот что будет происходить в этом случае :
|
|||
|
||||
| Shurr |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 24.10.2006 Репутация: 5 Всего: 7 |
Все зависит от имплементации конкретного драйвера и конкретной БД. Абстрактно сказать нельзя.
|
|||
|
||||
| jitm |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 11.10.2006 Репутация: 2 Всего: 3 |
[url=http://java.sun.com/j2se/1.4.2/docs/api/java/sql/CallableStatement.html#setString(java.lang.String, java.lang.String)]SetString[/url]
|
|||
|
||||
| Shurr |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 24.10.2006 Репутация: 5 Всего: 7 |
jitm
Да, это спецификация на действия драйвера при setString(). Но дальше все зависит от БД, будет ли она приводить строку к числу. seth
Опять же, все зависит от драйвера, предусмотрен ли в нем парсинг из такого типа. В данной ситуации можно утверждать с большой долей вероятности, что парсинг из строки в драйвере предусмотрен. Вот, например, вырезка из ораклового драйвера:
Как видишь, кастинг из String предусмотрен, так что в базу попадет уже INTEGER. В случае же с методом setString() в базу попадет VARCHAR, и дальше, как я уже говорил, все будет зависеть от конкретной БД. |
||||
|
|||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |