Простым способом было бы использовать фреймворк PHP, такой как CodeIgniter или Laravel , которые имеют встроенные функции, такие как фильтрация и активная запись, так что вам не нужно беспокоиться об этих нюансах.
Разработчик SQL будет выглядеть в следующем месте в этом порядке на tnsnames.ora $HOME/.tnsnames.ora файла
Для наблюдения, который использует один Разработчик SQL, выпустите команду show tns
в рабочем листе
, Если tnsnames.ora файл не становится распознанным, используйте следующую процедуру:
Определяют переменную окружения, названную TNS_ADMIN для указания на папку, которая содержит tnsnames.ora файл.
В Windows, это сделано путем навигации к Панель управления > Система > Усовершенствованные параметры настройки системы > Переменные среды...
В Linux, определите переменная TNS_ADMIN в .profile файле в Вашем корневом каталоге.
Подтверждают, что OS распознает эту переменную окружения
Из командной строки Windows: повторите %TNS_ADMIN %
Из Linux: $TNS_ADMIN эха
Разработчик SQL Перезапуска
Можно всегда узнавать местоположение tnsnames.ora файла, используемого путем выполнения TNSPING для проверки возможности соединения (9i или позже):
C:\>tnsping dev
TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 08-JAN-2009 12:48:38
Copyright (c) 1997, 2005, Oracle. All rights reserved.
Used parameter files:
C:\oracle\product\10.2.0\client_1\NETWORK\ADMIN\sqlnet.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = XXX)(PORT = 1521)) (CONNECT_DATA = (SERVICE_NAME = DEV)))
OK (30 msec)
C:\>
Иногда, проблема с записью, которую Вы сделали в tnsnames.ora, не, что система не может найти его. Однако я соглашаюсь, что установка tns_admin переменной среды является Хорошей Вещью, так как она избегает неизбежных проблем, которые возникают с определением точно, какой tnsnames файл используется в системах с несколькими домами оракула.
Шаги, упомянутые Джейсоном, очень хорошо и должно работать. Однако с SQL Developer есть небольшая хитрость. Он кэширует спецификации подключения (хост, имя службы, порт) при первом чтении файла tnsnames.ora. Тогда это не делает спецификации недействительными, когда исходная запись удаляется из файла tnsname.ora. Кеш сохраняется даже после завершения и перезапуска SQL Developer. Это не такой уж нелогичный способ выхода из ситуации. Даже если файл tnsnames.ora временно недоступен, SQL Developer все равно может установить соединение, пока исходные спецификации остаются верными. Проблема заключается в следующем небольшом повороте. SQL Developer обрабатывает имена служб в файле tnsnames.ora как значения с учетом регистра при разрешении соединения. Поэтому, если раньше у вас было имя записи ABCD.world в файле и вы заменили его новой записью с именем abcd.world, SQL Developer НЕ будет обновлять свои спецификации подключения для ABCD.world - он будет рассматривать abcd.world как другой соединение в целом. Почему меня не удивляет, что продукт Oracle будет рассматривать как чувствительный к регистру содержимое формата файла, разработанного Oracle, который явно не чувствителен к регистру?