Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
13.09.2016, 16:35
|
|||
---|---|---|---|
|
|||
Формат сценария при сравнении CHAR SET OCTETS [187] |
|||
#18+
При сравнении в двух БД таблиц, содержащих поле типа CHAR( <n> ) CHARACTER SET OCTETS (используемое у меня для значений UUID), модуль сравнения данных генерирует сценарий, в котором значения этого поля имеют вид строковых литералов, хотя на самом деле они этого не допускают, т.к. содержат двоичные данные. Пользоваться таким сценарием невозможно. В частности, если значение поля содержит нулевой байт (#0), то следующий за этим байтом текст остаётся не загружен в редактор сценариев. Наверно, следует автоматически помещать значения полей такого типа в LOB-файл или дать возможность пользователю с помощью настройки сравнения сделать это. Ещё один способ решения проблемы — введение специальных знаков в литералы (наподобие паскалевских #<n>). ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.09.2016, 17:05
|
|||
---|---|---|---|
|
|||
Формат сценария при сравнении CHAR SET OCTETS [187] |
|||
#18+
Валерий Андреев, не надо специальных литералов. В 2.5 всё уже давно есть Hex Literal Support Для CHARACTER SET OCTETS это самое то. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.09.2016, 08:31
|
|||
---|---|---|---|
Формат сценария при сравнении CHAR SET OCTETS [187] |
|||
#18+
О каком сравнении идет речь - данных таблиц или метаданных баз? Версия сервера? ODS баз? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.09.2016, 10:51
|
|||
---|---|---|---|
|
|||
Формат сценария при сравнении CHAR SET OCTETS [187] |
|||
#18+
IBExpert, данных конечно же. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.09.2016, 16:15
|
|||
---|---|---|---|
Формат сценария при сравнении CHAR SET OCTETS [187] |
|||
#18+
Симонов Денисданных конечно же. Там есть преобразование в hex literals, в зависимости от ODS базы. Поэтому я на всякий случай задал и этот вопрос. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.09.2016, 17:16
|
|||
---|---|---|---|
|
|||
Формат сценария при сравнении CHAR SET OCTETS [187] |
|||
#18+
IBExpert, имеется в виду сравнение данных (не метаданных) таблиц в двух базах данных Firebird 1.5 (ODS 10.1). Может быть, в IBExpert'е уже есть 16-ричные литералы, и я просто не знаю? Но почему они не используются в сценарии, который генерируется при сравнении? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.09.2016, 19:45
|
|||
---|---|---|---|
|
|||
Формат сценария при сравнении CHAR SET OCTETS [187] |
|||
#18+
Валерий Андреев, потому что в 1.5 hex literals не было. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
15.09.2016, 04:32
|
|||
---|---|---|---|
Формат сценария при сравнении CHAR SET OCTETS [187] |
|||
#18+
Валерий АндреевНо почему они не используются в сценарии, который генерируется при сравнении? Денис уже ответил. Скорее всего, делать какие-то костылики для старых серверов я не буду. Хотя, наверное, в LOB их выгружать можно. Присылай пример базы (одна табличка, несколько записей с октетами) - я посмотрю. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
15.09.2016, 15:40
|
|||
---|---|---|---|
|
|||
Формат сценария при сравнении CHAR SET OCTETS [187] |
|||
#18+
IBExpert, Вот две БД с таблицей для сравнения. При сравнении в одну сторону часть текста сценария в редакторе исчезает (байт 0x00), при сравнении в другую сторону строка оператора update разрывается (байты 0x0d и 0x0a). ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=42&mobile=1&tid=1599220]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
48ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 164ms |
0 / 0 |