|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
Чисто любопытно. В примерах к FibPlus есть скрипт бд Employee. В нем есть такой кусок: Код: plsql 1. 2. 3. 4.
При попытке выполнить Firebird (2.5.9) меня обломил, ибо: What are BLOB subtypes? Blobs can store infinite amounts of data. They can be used to store text, images, videos, audio, or any other kind of data. Retrieving and writing data to blobs is done with separate functions, so it is usable to have some basic string (CHAR, VARCHAR) operations available for textual blob. Therefore the sub types were added (as blob is a type). The subtypes are: 0 - binary data (image, video, audio, whatever) 1 - text (basic character functions work) 2 - BLR (used for definitions of Firebird procedures, triggers, etc.) User applications should only use subtypes 0 and 1. Пришлось создать таблицу с подтипом 1. Но потом: изменяю поле -> редактирую домен -> меняю подтип на 2 - и получаю Код: plsql 1. 2. 3. 4.
Т. е. если нельзя, но очень хочется, значит, можно? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 11:47 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
dedRasta Т. е. если нельзя, но очень хочется, значит, можно? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 12:04 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
dedRasta, скрипт этот, видимо, делался во времена царя гороха. И непонятно, почему столбец называется SQL_TEXT, а тип ему задан как для BLR. Теоретически, если там и правда был бы BLR, это было сделано для удобства просмотра столбца в IBExpert, и ни для чего более. Также смущает SEGMENT SIZE 1, при том что у самих же FIBPlus размер сегмента в либах задан в 16к. А "всем известно", что размер сегмента, определяемый в ddl, практически всем приложениям (и фибплюсу исходно) абсолютно пофиг. Как и серверу. dedRastaНо потом: изменяю поле -> редактирую домен -> меняю подтип на 2 редактируешь чем? alter ... или колупаешь системные таблицы редактором в IBE? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 12:04 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
kdv dedRasta, редактируешь чем? alter ... или колупаешь системные таблицы редактором в IBE? Редактором IBE, тем, который выскакивает, когда поле своей таблицы правишь ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 13:10 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
dedRasta, кстати, "я видел всё". Оказалось, что абсолютно такое же уже видел в одной базе, для которой мы миграцию делали год назад. Именно BLOB SUB_TYPE 2 SEGMENT SIZE 1. Такой тип использовался в одном столбце для картинок, в другом для х.з. чего. Как обычно, на вопрос "зачем так сделано" ответить не смогли, за давностью DDL. Сильно не искал, но конструкция SEGMENT SIZE 1 действительно попадается только в статьях FIBPlus. Нахрена это, я не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 13:12 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
dedRastaРедактором IBE, тем, который выскакивает, когда поле своей таблицы правишь ну, привет тебе. Отвыкай. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 13:13 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
kdv конструкция SEGMENT SIZE 1 действительно попадается только в статьях FIBPlus. Нахрена это, я не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 13:24 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
Мимопроходящий, а нафига его вообще указывать??? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 13:45 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
kdv, IBExpert и по сей день в скриптах таблиц показывает SEGMENT SIZE 80 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 13:49 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
kdv а нафига его вообще указывать??? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 13:56 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
Симонов Денис IBExpert и по сей день в скриптах таблиц показывает SEGMENT SIZE 80 это сервер по умолчанию пихает 80, если при создании не указано иное. Код: sql 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 14:27 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
Симонов Денис, ну и пусть пихает. Вот зачем пихать 1 - это вопрос. Какая-то разновидность "программерской шутки"? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 14:45 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
Мимопроходящий, да пусть пихает свои 80 в системные таблицы. Не обязательно эту фразу в DDL извлекать, даже если в Rdb$segment_length что-то записано. Если я правильно понимаю сервер всё равно кладёт болт на то что указано в SEGMENT SIZE и пишет тупо тем размером сегмента который посылает клиент. Для поточных блобов так это предложение вообще бессмысленно. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 14:50 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
Симонов Денис Не обязательно эту фразу в DDL извлекать ВОЛЮНТАРИЗЪМ! (С) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 14:55 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
что лежит в системных таблицах, то и отображается. к isql претензий нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 15:47 |
|
Blob Subtype 2
|
|||
---|---|---|---|
#18+
Мимопроходящий, Кстати, мне вот тоже интересно.... Если на SEGMENT SIZE все кладут - может ли быть случай, когда он "сыграет"? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.10.2020, 22:18 |
|
|
start [/forum/topic.php?fid=40&fpage=11&tid=1560217]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
72ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 189ms |
0 / 0 |