Архив рубрики «Вопрос-Ответ»

Установка Oracle Client на Windows

08.12.2010

Краткое руководство по установке Oracle Client на Windows-машину.

1. Скачать Oracle Client 11G win32_11gR1_client.zip (552,398,260 bytes). Для скачивания требуется регистрация, но не требуется отправка СМС :) .
2. Установить, запустив setup.exe после распаковки. Золотая середина (имхо) Runtime-набор клиента.
3. Прописать нужный TNS в tnsnames.ora (если вы не меняли пути при установке C:\app\admin\product\11.2.0\client_1\network\admin\tnsnames.ora) используя следующий синтаксис:

db =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID = DB11G)
    )
  )

4. Протестировать коннект в cmd: tnsping db
Если с коннектом все удачно, вы увидите OK и миллисекунды пинга.
Такая быстрая установка, естественно, не подразумевает откидывания на спинку кресла :) в отличии от самой Windows.

Distinct по одному полю таблицы из нескольких столбцов

06.12.2010

Имеем следующий тестовый запрос:

SELECT o.ENTRY_ID, o.DESCRIPT, o.ENTRY_DATE, l.COMPANY_ID
  FROM TABLE1 o, TABLE2 l
 WHERE o.ENTRY_ID = l.ENTRY_ID
   AND COMPANY_ID IN (10, 11, 12)

который возвращает следующий набор данных:

ENTRY_ID  DESCRIPT        ENTRY_DATE  COMPANY_ID
1         Description 1   2/12/2008   10
2         Description 2   2/12/2008   10
3         Description 3   2/10/2008   10
4         Description 4   2/11/2008   10
4         Description 4   2/11/2008   11
4         Description 4   2/11/2008   12

Таким образом если результирующие записи связаны с одной компании мы увидим несколько записей с одинаковым DESCRIPTION. Цель: получить только одну запись, связанную с каждой компанией.