© Copyright International Business Machines Corporation 2006. Все права защищены. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM® Corp.
Существует два новых типа проекта данных в рабочей среде:
- Проект схемы данных
- Проект разработки данных
Проекты схемы данных используются для создания и хранения моделей данных, например, физических и логических моделей моделей данных. Проекты разработки данных используются для создания и хранения объектов разработки приложений для работы с данными, такие как хранимые процедуры и пользовательские функции (которые также называются процедурами). Процедуры можно также просмотреть из проекта схемы данных как часть физической модели данных. Однако, поддержка разработки процедур в проекте схемы данных очень ограничена, и в нем не существует поддержки инструментария SQL для процедур. При разработке процедур рекомендуется использовать предназначенный для этого проект разработки данных, который предоставляет более полную поддержку, включая программы-мастера, редакторы процедур, средства отладки и интеграцию с инструментарием SQL.
Если в редакторе данных таблицы выполняется проверка XML в таблице XML, которая не имеет первичного ключа, то эта проверка будет работать только первый раз, когда вы вставляете значение XML. Кроме того, изменение существующего столбца XML с проверкой XML будет неудачным.
Способ обхода неполадки: создайте первичный ключ для таблицы, которая содержит столбцы XML.
Работа с несколькими корневыми элементами в этом редакторе может привести к ошибкам при сохранении файла XSD с комментариями.
Способ обхода неполадки: создайте отдельный набор файлов документа Схемы XML для каждого корневого элемента.
Для того чтобы использовать типы данных XML и работать со схемами XML, необходимо подключиться к базе данных UTF-8. Объем данных, возвращаемых из базы данных для документов XML неограничен. В зависимости от объема возвращаемых данных может меняться производительность.
- Редактор SQL в настоящий момент не поддерживает переменные хоста в действии Выполнить SQL.
Способ обхода неполадки: если это оператор DML, то можно выполнить SQL из компоновщика SQL.
- В компоновщике SQL не поддерживается полный синтаксис SQL. Например, не поддерживаются Пользовательские типы (UDT) и табличные функции.
- Пользовательские типы (UDT) не поддерживаются в качестве параметров процедур.
- Для развертывания предназначенных для DB2 Universal Database™ for iSeries® хранимых процедур Java™ из файловой системы с помощью развертывания Ant необходимо, чтобы файл jt400.jar находился в системном пути к классам. При попытке развертывания экспортированной хранимой процедуры с помощью инструкций из файла DeployInstructions.txt, может возникнуть следующее сообщение об ошибке:
...[createsp] Невозможно подключиться к целевой базе данных.
[createsp] com.ibm.db2.jcc.DB2Driver...Способ обхода неполадки: убедитесь в том, что файл db2jcc.jar и соответствующие лицензионные файлы находятся в системном пути к классам.
- При развертывании или выполнении хранимых процедур Java может появиться сообщение об ошибке "невозможно загрузить класс". Это может случиться, если в версии JDK существует несоответствие между RAD v7 и сервером DB2®, который находится на более низком уровне JDK.
Действие по обходу неполадки: необходимо указать опцию "-source 1.4" в поле Опции компиляции мастера Развернуть процедуры при развертывании хранимых процедур Java на серверах, использующих JDK уровня 1.4, (например, на сервере DB2 Universal Database для Linux®, UNIX® и Windows® версии 8.2). В общем случае, используйте подходящую опцию компиляции "-source JDK level" для указания уровня JDK на сервере базы данных.
- При развертывании хранимой процедуры или пользовательской функции с помощью средств развертывания Ant может возникнуть следующее сообщение, если файл tools.jar не находится в classpath:
Невозможно найти tools.jar. Ожидалось обнаружить его в F:\jre\1.4.2\lib\tools.jar
tools.jar - это часть JRE (Среды выполнения Java), а не часть средства развертывания Ant.Способ обхода неполадки: файл tools.jar не нужен для выполнения сценария Ant, и на это сообщение можно не обращать внимания.
- При изменении имени метода Java в редакторе хранимых процедур невозможно сохранить процедуру, щелкнув правой кнопкой мыши в редакторе на странице Источник и выбрав опцию Сохранить.
Способ обхода неполадки: Для сохранения хранимой процедуры выберите Файл->Сохранить, или нажмите Ctrl+S , или щелкните на значке Сохранить.
- При выполнении действия "перенести и положить" при переносе хранимой процедуры или пользовательской функции между серверами разного типа (например, с сервера DB2 Universal Database для Linux, UNIX Windows на сервер DB2 Universal Database для z/OS®) появляется предупреждение о несовместимости этих серверов. При последующей попытке открыть хранимую процедуру или пользовательскую функцию может появиться сообщение об ошибке.
- Выполнение Профилирования SQL для DB2 UDB для сервера Linux, UNIX и Windows V8.2 может привести к возникновению исключительной ситуации нулевого указателя, если на сервере отсутствует предполагаемая хранимая процедура (SYSIBM.SQLCAMESSAGECCSID), требуемая драйвером JCC для извлечения текста сообщения об ошибке.
Способ обхода неполадки: можно создать соединение с сервером, не указывая параметр retrieveMessagesFromServerOnGetMessage=true.
- В процессе отслеживания выполнения процедур SQL, генерируются события для операторов DML, таких как INSERT, SELECT, DELETE и UPDATE, вызываемых в процедурах. Однако, события не генерируются для таких процедурных операторов, как присваивание значения переменной, и для управляющих структур, например, WHILE или IF. Следовательно, для операторов процедуры может не генерироваться информация о профилировании.
- При подключении к серверу UNIX DB2 могут возникнуть исключения тайм-аута, если добавлены точки прерывания или при выполнении в режиме отладки.
- Отладчик не выполняется для хранимой процедуры, имя которой состоит как из английских, так и китайских символов.
- Выражения отслеживания поддерживаются только для хранимых процедур Java. Они не поддерживаются для хранимых процедур SQL и SQLJ.
- Отладчик не останавливается на точке прерывания, если она расположена не на первой лексеме выполняемого оператора, такого как SET. Кроме того, он не останавливается на DECLARE CONTINUE, CLOSE CURSOR и ROLLBACK.
- Если при отладке хранимой процедуры Java выбрано действие Завершить, может потребоваться несколько минут для полного завершения сеанса отладки. Новые сеансы отладки, запущенные в это время, могут выполняться неравномерно.
- При отладке хранимой процедуры Java, которая вызывает другую хранимую процедуру Java, невозможно отлаживать эту другую процедуру. Невозможно трассировать вложенную хранимую процедуру и все точки прерывания, которые установлены внутри вложенной хранимой процедуры, будут игнорироваться. Это ограничение относится к Linux, UNIX и Windows.
- Если возникнет ошибка 'Тайм-аут при ожидании пакета' при отладке хранимой процедуры Java, попытайтесь увеличить значение тайм-аута Java.
Способ обхода неполадки: Для того чтобы увеличить значение тайм-аута Java, в строке меню рабочей среды выберите пункт Окно > Параметры. Разверните узел Java и выберите Отладка. Увеличьте значение тайм-аута отладчика; оно задается в миллисекундах на странице параметров отладки, в разделе Тайм-аут соединения. Рекомендуется, по крайней мере, удвоить значение по молчанию.
- Если при отладке хранимой процедуры Java для изменения переменной со значением пустой строки используется действие Изменить значение, то кнопка OK в окне редактирования может остаться недоступной.
Способ обхода неполадки: Для того чтобы сделать эту кнопку доступной, выберите переключатель Ввести вычисление, введите в качестве значения непустую строку (например, 'a'), а затем выберите переключатель Ввести буквенный текст. Кнопка OK станет доступной.
- Если при отладке хранимой процедуры Java вы не видите локальных переменных, то возможно, что хранимая процедура была развернута без опции компилятора -g.
Способ обхода неполадки: Убедитесь в том, что при развертывании хранимой процедуры Java указана опция компилятора -g.
- Если на панели Переменные появляется сообщение 'неверный фрейм стека', перейдите на панель Отладка и щелкните на объекте нити выше фрейма стека, а затем щелкните на фрейме стека. Это должно обновить панель Переменные, и ошибка должна перестать появляться.
- При отладке хранимой процедуры SQLJ, которая выполняется в DB2 UDB для iSeries V5 R4, текущая выполняемая строка не будет соответствовать указанной исходной строке SQLJ, показанной на панели Отладка, если только не применяется iSeries PTF, который изменяет карту строк, чтобы они соответствовали источнику SQLJ, а не источнику Java.
- Не распознаются параметры отладчика для тайм-аута администратора сеансов (для их установки выберите Окно > Параметры, затем разверните Выполнить/Отладить и выберите Отладчик хранимых процедур DB2, затем измените значение поля Тайм-аут администратора сеансов в минутах).
- Отладчик не может обработать хранимую процедуру с большим числом переменных в DB2 для Linux, UNIX и Windows. Максимальное число переменных - это 200.
- Перемещение курсора в сеансе отладки: В некоторых случаях, когда в процедуре существует несколько объявлений переменных, для перехода на следующую строку одного щелчка на опции Трассировать функцию или Пропустить функцию недостаточно. Например, необходимо щелкнуть дважды на такой строке: DECLARE v_dept, v_actdept CHAR(3); и три раза на такой строке: DECLARE v_bonus, v_deptbonus, v_newbonus DECIMAL(9,2). Необходимо столько щелчков, сколько существует объявлений переменных.
- Если вы запустите сеанс отладки хранимой процедуры Java и добавите точки прерывания, а затем выключите их, то эти точки прерывания будут оставаться включенными.
Способ обхода неполадки: при запуске нового сеанса отладки нужно сначала удалить все старые точки прерывания, а затем добавить новые.
- В некоторых случаях, когда вы работаете с несколькими проектами схемы данных, то при попытке отладить хранимую процедуру может возникнуть ошибка "Невозможно найти хранимую процедуру PROCNAME. Возможно, процедура была удалена из рабочей области" или "Источник не найден".
- Иногда после отладки вложенной хранимой процедуры состояние панели вывода данных указывает, что отладчик все еще работает; это может привести к проблемам при последующем запуске или развертывании хранимых процедур.
Способ обхода неполадки: Администратор сеансов должен быть запущен на компьютере-клиенте, на котором установлен продукт разработчика. Для запуска администратора сеансов запустите файл db2dbgm.bat из установочного каталога bin продукта.
- Поддержка отладки хранимых процедур на серверах DB2 V8 Linux, Unix, Windows и z/OS ограничена. Отладка процедур SQL на сервере DB2 V8 возможна только в том случае, если на нем установлен пакет исправлений 14. Для того чтобы отладчик работал на сервере DB2 V8, администратор сеансов также должен быть запущен на компьютере-клиенте, на котором установлен продукт разработчика. Для запуска администратора сеансов запустите файл db2dbgm.bat из установочного каталога bin продукта.
- ALIAS, MQT, NICKNAME и SYNONYM теперь поддерживаются в процессе разработки обхода, но не поддерживаются в процессе Преобразования EJB.
- Ограниченная поддержка для MySQL 4.1: Следующие свойства показываются неправильно на панели Свойства: уникальный индекс, столбцы с автоматическим приращением, значение столбца по умолчанию для NULL и binary. Кроме того, не поддерживаются процедуры и функции C.
- Триггеры, контрольные ограничения и представления не поддерживаются для Cloudscape® версии 5.1: триггеры и контрольные ограничения Cloudscape версии 5.1 не отображаются в Структуре базы данных. В панели Свойства в теле SQL отсутствуют представления Cloudscape версии 5.1. Невозможно генерировать DDL или создавать с помощью обратного проектирования триггеры, контрольные ограничения и представления Cloudscape v5.1.
- Ограничена поддержка пользовательских типов данных в Oracle: при генерации DDL для таблицы Oracle в определение таблицы не включается имя пользовательского структурного типа данных.
- После закрытия редактора сравнения, который был открыт для сравнения объектов в контейнере структуры базы данных, может не выполняться обновление объекта контейнера в структуре базы данных, что приводит к возникновению исключительной ситуации "невозможно модифицировать набор ресурсов без транзакции write". Например, эта исключительная ситуация может возникать при сравнении таблицы в физической модели данных с ее первоначальным исходным текстом.
Способ обхода неполадки: В этом случае можно выбрать контейнер, содержащий объект контейнера, и повторить операцию обновления. Например, если не удается обновить таблицу, попытайтесь обновить схему, содержащую эту таблицу. Если обновить контейнер не удается, следует отключиться от базы данных и подключиться к ней снова.
Если определить таблицу с единственным столбцом данных типа XML или таблицу с неуникальными строками, а затем с помощью редактора таблицы удалить строку, то будут удалены все строки, совпадающие с выбранной строкой.
Способ обхода неполадки: не используйте редактор данных таблицы для удаления строки в таблице с повторяющимися строками.