Перейти к содержимому

Фотография

Watir. Connect to an Oracle Database


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 4

#1 prosta

prosta

    Новый участник

  • Members
  • Pip
  • 5 сообщений
  • ФИО:Леся Ле

Отправлено 27 января 2012 - 10:50

Ребята, подскажите , если знаете.
Мне нужно, чтобы после создания реквеста совершалось соединение с БД и соответствующей командой (например, select * from my_request order by request_id desc) проверять последний созданный реквест.
Что я имею:
DB oracle
PLSQL Developer
OCI8 инсталирована

Вот часть кода соединения с БД (но он не работает):
connection = OCI8.new( 'UserName', 'password', 'ip:port/scheme')
cursor = connection.exec('select * from table')
while r = cursor.fetch_hash
r.each {|key, value| puts "#{key} is #{value}" }
end
puts cursor.row_count
cursor.close
connection.logoff

И как проверить, каким путем, соответствует ли эта последняя запись в БД именно моему новосозданному реквесту или нет.
  • 0

#2 ch_ip

ch_ip

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 097 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 27 января 2012 - 11:26

Вот часть кода соединения с БД (но он не работает):

Как именно она не работает?
Если этот же запрос выполнить в PLSQL Developer, он возвращает данные?

И как проверить, каким путем, соответствует ли эта последняя запись в БД именно моему новосозданному реквесту или нет.

Направление мысли про селект из базы и последующее сравнение данных верное. Осталось разобраться, что именно не работает в коде обращения к БД
  • 0

#3 prosta

prosta

    Новый участник

  • Members
  • Pip
  • 5 сообщений
  • ФИО:Леся Ле

Отправлено 27 января 2012 - 14:25


Вот часть кода соединения с БД (но он не работает):

Как именно она не работает?
Если этот же запрос выполнить в PLSQL Developer, он возвращает данные?

И как проверить, каким путем, соответствует ли эта последняя запись в БД именно моему новосозданному реквесту или нет.

Направление мысли про селект из базы и последующее сравнение данных верное. Осталось разобраться, что именно не работает в коде обращения к БД


Большое спасибо за быстрый ответ.

При запуске кода выдается ошибка:
oci8.c:360:in oci8lib_191.so: ORA-12154: TNS:could not resolve the connect identifier specified <OCI Errror>
Опишу подробнее ситуацию:
На определенном сайте мы заполняем форму-реквест, нажимаем save. В БД эти данные появляются. Для проверки я открываю програму PLSQL Developer, пишу запрос, который мне выводит запрошенные мной данные. Я могу, конечно, знать, что это именно мой реквест (по имени, по времени создания , по ай ди). Но не могу правильно написать код, который бы делал это все.
Вот есть скрин:
Изображение
у меня есть UserName = test1, Password = test1 и DataBase= somename.com
Как мне присоединиться к ней и далее ввести селект - этого не знаю
  • 0

#4 ch_ip

ch_ip

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 097 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 27 января 2012 - 16:54

При запуске кода выдается ошибка:
oci8.c:360:in oci8lib_191.so: ORA-12154: TNS:could not resolve the connect identifier specified <OCI Errror>

Видимо, у вас не настроен Tnsnames.ora
Попросите коллег (программистов, админов) прислать вам файлик, которй они используют или правильно заполнить тот, который есть у вас :)

Кстати, по оракловым ошибкам очень удобно гуглить - у каждой и них есть свой идентификатор ;-)
  • 0

#5 prosta

prosta

    Новый участник

  • Members
  • Pip
  • 5 сообщений
  • ФИО:Леся Ле

Отправлено 30 января 2012 - 08:29

Спасибо! Буду пробовать :)
  • 0


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных