вот фон: у нас сервер Oracle работает под Windows.Несколько лет назад я написал клиент (windows), который считывает данные из Oracle, обрабатывает, создает XML и отправляет их обратно в управляющее программное обеспечение прибора (масс-спектрометр) (работающее на той же машине, что и Oracle).Утилита была написана на C ++ как dll с двумя оболочками: GUI и консолью (для LIMS).Соединение было выполнено через ADO / ODBC, поэтому вам не нужно устанавливать клиент Oracle (MS для Oracle ODBC драйвер работает просто отлично ...) Работает как шарм в течение многих лет, но ... Теперь LIMS мигрирует на Linux,У меня есть выбор:
- для написания версии для Linux и поддержки Win и Linux (что НЕ хорошо), или
- для написания независимого от платформы кода (думая о Python) и жить долго и счастливо.
вот мой (плохо сформулированный) вопрос: Можно ли написать код Python, который читает данные Oracle, находящиеся в Linux или Windows, ПРЕДОСТАВЛЯЯ, что клиент Oracle не установлен?
Редактировать : переформулировать плохо сформулированный вопрос: Какие минимальные изменения я должен внести в стандартную конфигурацию / lib Python, чтобы использовать один и тот же код в любом Linuxили Windows для чтения данных Oracle?
Все, что мне нужно, это просто выполнить несколько операторов SELECT, ТОЛЬКО ДЛЯ ЧТЕНИЯ.
уже сделано:
- понятьчто это МОЖЕТ быть сделано в Java
- Python: я могу определить, на какой платформе я работаю, и при необходимости разветвить код (я сделаю это, но предпочитаю НЕ, может быть просто строка соединения?)
- посмотрел на Python cx_Oracle, до сих пор не могу понять, смогу ли я использовать его и иметь один и тот же код для Linux и Win (сейчас пишу тест),Спасибо
Edit1: нашел очень хорошую отправную точку: благодаря cx_Oracle и парадигме источника данных