Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Отследить запрос к БД / 11 сообщений из 11, страница 1 из 1
19.02.2013, 17:21:47
    #38157750
-=Koba=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отследить запрос к БД
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
  public static void importAuditMessages(final AuditImportFilter export) throws AuditException {
    Connection conn = null;
    PreparedStatement pst = null;
    ResultSet rs = null;
    try {    
      conn = ConnectionFactory.getConnection();
      pst = conn.prepareStatement(AUDIT_IMPORT);
      // pst.setLong(1, Long.getLong(export.getAuidtID()));
      DBUtils.setLong(pst, 1, export.getAuidtID());      
      pst.setLong(2, export.getExportID());      
      pst.setString(3, export.getUserLogin());
      pst.setString(4, export.getTerbank());
      pst.setString(5, export.getOsb_number());
      pst.setString(6, export.getUser_app());
      pst.setString(7, export.getIP_ADDRESS());
      pst.setString(8, export.getDecription());
      pst.setString(9, "TO_DATE ('"+export.getEvent_date()+"', 'DD.MM.YYYY HH24:MI:SS')");
      pst.setString(10, "(select id from tcurs_dic_function where name = '"+export.getFunctionname()+"')");
      pst.setString(11, "(select id from tcurs_dic_severity where name = '"+export.getSeverityname()+"')");
      rs = pst.executeQuery();
    }
    catch (Exception e) {
      throw new AuditException("Произошла ошибка при импортировании в БД", e);
    }
    finally {
      DBUtils.closeSilent(rs, pst, conn);
    }
  }
}



Вставляю строчкув БД, но валится ошибка
Как можно отследить, запрос который ушел на БД?

Пробую вставлять в TOAD данный запрос, вроде уходит нормально
...
Рейтинг: 0 / 0
19.02.2013, 17:33:44
    #38157777
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отследить запрос к БД
-=Koba=-,
ну, если у тебя есть TOAD, то самое время изучить профайлеры БД а не Java.
off
какая БД?
...
Рейтинг: 0 / 0
19.02.2013, 17:39:48
    #38157796
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отследить запрос к БД
-=Koba=-
Код: java
1.
      pst.setString(9, "TO_DATE ('"+export.getEvent_date()+"', 'DD.MM.YYYY HH24:MI:SS')");

Вставляю строчкув БД, но валится ошибка... которая секретна?
И второй вопрос: в to_date() и to_char() точно не перепутали?
...
Рейтинг: 0 / 0
19.02.2013, 18:01:46
    #38157839
Denis Popov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отследить запрос к БД
On 19.02.2013 18:21, -=Koba=- wrote:

> Вставляю строчкув БД, но валится ошибка
> Как можно отследить, запрос который ушел на БД?


Debug Oracle JDBC connection: http://www.rgagnon.com/javadetails/java-0663.html

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
19.02.2013, 18:03:29
    #38157840
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отследить запрос к БД
Надо посмотреть чему равен "Exception e" или как-то детализовать сообщение. Или там
будет что-то более конкретное типа SQLException с кодом ORA-????? e.t.c.
...
Рейтинг: 0 / 0
19.02.2013, 18:15:34
    #38157863
-=Koba=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отследить запрос к БД
Petro123-=Koba=-,
ну, если у тебя есть TOAD, то самое время изучить профайлеры БД а не Java.
off
какая БД?

Вот и лажу но там не отображается
А в лог нельзя вывести конечный запрос который сформировывается?

БД Oracle
...
Рейтинг: 0 / 0
19.02.2013, 18:16:10
    #38157864
-=Koba=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отследить запрос к БД
Basil A. Sidorov-=Koba=-
Код: java
1.
      pst.setString(9, "TO_DATE ('"+export.getEvent_date()+"', 'DD.MM.YYYY HH24:MI:SS')");

Вставляю строчкув БД, но валится ошибка... которая секретна?
И второй вопрос: в to_date() и to_char() точно не перепутали?

http://www.techonthenet.com/oracle/questions/insert_date.php
...
Рейтинг: 0 / 0
19.02.2013, 18:22:27
    #38157872
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отследить запрос к БД
-=Koba=-БД Oracle
Profiler в Oracle
...
Рейтинг: 0 / 0
19.02.2013, 18:23:03
    #38157874
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отследить запрос к БД
-=Koba=-, полный текст у тебя в AUDIT_IMPORT.

По поводу выражений в bind-значениях я не уверен что это корректно.
Тоесть если ты пишешь setString то это подразумевает
действительно string а не expression.
...
Рейтинг: 0 / 0
20.02.2013, 10:26:37
    #38158486
-=Koba=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отследить запрос к БД
Проблема оказалась с этими параметрами

Код: sql
1.
2.
3.
      pst.setString(9, "TO_DATE ('"+export.getEvent_date()+"', 'DD.MM.YYYY HH24:MI:SS')");
      pst.setString(10, "(select id from tcurs_dic_function where name = '"+export.getFunctionname()+"')");
      pst.setString(11, "(select id from tcurs_dic_severity where name = '"+export.getSeverityname()+"')");



С 9 решил отсюда тыц

А как быть с подзапросами?? Делать два дополнительных запроса еще или можно как-то обойти их
...
Рейтинг: 0 / 0
20.02.2013, 10:45:03
    #38158527
-=Koba=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отследить запрос к БД
Проблему решил

Вынес подзапросы в
pst = conn.prepareStatement(AUDIT_IMPORT);


Спасибо всем
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Отследить запрос к БД / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]