|
![]() |
#1 |
Administrator
|
Еще 5 копеек про мемо-поля. Их нельзя впихнуть в условие Where (следствие их неиндексируемости). А также - по ним невозможен поиск.
Ряд консалтиновых компаний используют в своей работе GPT (General Problem Tracker) - систему запросов клиентов с контролем их исполнения. Не знаю - пошла ли терминология от Колумбуса или нет - это неважно. Важно то, что описания задач и комментарии к ним - руки чешутся сделать мемо-полями (типа информации может быть много). Однако - это решение является архитектурной ошибкой (на мой взгляд), т.к. впоследствии возникает задача поиска по запросам или комментариям, а по мемо-полю этого сделать увы - нельзя. Я говорю о GPT, реализованного на Аксапте. Это в качестве примера. Ряд остальных доводов хорошо расписал Mazzy
__________________
Возможно сделать все. Вопрос времени |
|
![]() |
#2 |
MCTS
|
Цитата:
Сообщение от sukhanchik
![]() Важно то, что описания задач и комментарии к ним - руки чешутся сделать мемо-полями (типа информации может быть много). Однако - это решение является архитектурной ошибкой (на мой взгляд), т.к. впоследствии возникает задача поиска по запросам или комментариям, а по мемо-полю этого сделать увы - нельзя.
Собственно получается задача полнотекстового поиска? Ее вообще оптимально будет средствами DAX решать? |
|
![]() |
#3 |
Участник
|
Цитата:
Правильный вопрос: как хранить более чем 1999 символов НА РАЗНЫХ ЯЗЫКАХ. Отдельной таблицей. См. как сделано описание номенклатуры или Представления номенклатуры: одной номенклатуре может соответствовать несколько описаний на разных языках. Цитата:
См. как сделан Агент данных (data crawler). (в сторону) Кстати, может быть поэтому и не используют memo-поля для хранения описаний на разных языках. |
|
![]() |
#4 |
Пенсионер
|
Цитата:
Сообщение от sukhanchik
![]() Еще 5 копеек про мемо-поля. Их нельзя впихнуть в условие Where (следствие их неиндексируемости). А также - по ним невозможен поиск.
Ряд консалтиновых компаний используют в своей работе GPT (General Problem Tracker) - систему запросов клиентов с контролем их исполнения. Не знаю - пошла ли терминология от Колумбуса или нет - это неважно. Важно то, что описания задач и комментарии к ним - руки чешутся сделать мемо-полями (типа информации может быть много). Однако - это решение является архитектурной ошибкой (на мой взгляд), т.к. впоследствии возникает задача поиска по запросам или комментариям, а по мемо-полю этого сделать увы - нельзя. Я говорю о GPT, реализованного на Аксапте. Это в качестве примера. Ряд остальных доводов хорошо расписал Mazzy и еще поиск по данным полям достаточно редкое явление, по крайней мере у нас.
__________________
![]() А еще у меня растет 2 внучки!!! Кому интересно подробности тут: http://www.baby-shine.com/ Последний раз редактировалось blokva; 29.01.2009 в 15:25. |
|
![]() |
#5 |
Участник
|
Граждане-товарищи! Не путайте контейнеры и мемо поля!
Суть в том, что контейнер хранится в поле с типом image (blob) - бинарные данные, а мемо - text (varchar(max), clob). Обрабатываются они сервером по разному и на клиенте тоже работают по разному. Если text еще похож в некотором роде на varchar, от image ваще из другой оперы! Посему считаю неправильным хранить коментарии и что-то текстовое в контейнерах. |
|
|
За это сообщение автора поблагодарили: mazzy (5), Ivanhoe (1). |
![]() |
#6 |
Участник
|
Пожалуй, таки да!
![]() Цитата:
Разве нет? Цитата:
Однако таблица ясно показывает, что разработчики иногда хранят текстовое и в контейнерах. Например, HRMApplicationWordBookmark, ReqLog ![]() Но в целом, похоже действительно следуют правилу: текст хранится в string(memo), а объекты/изображения/контейнеры в container. Снова исключением, стоящим за гранью добра и зла, являются Amounts в книгах покупок и продаж ![]() Клевая получилась ветка. Удалось узнать что-то новое. Спасибо! |
|
|
За это сообщение автора поблагодарили: Ivanhoe (2). |
![]() |
#7 |
Участник
|
Вообще-то нет. Если брать text, то когда на сервер уходит запрос select ... то обратно передается только <= 256 символов поля, потом клиент дополнительно запрашивает данные blob поля, если передалось не все. Насчет image точно не знаю, но думаю, алгоритм тот-же.
|
|
![]() |
#8 |
Участник
|
Цитата:
А когда "потом" клиент запрашивает? Это "потом" управляется программистом? Если не управляется, то какая разница - сразу или через десяток милисекунд? Сетевой трафик то все равно будет. Может настройки какие есть? |
|
![]() |
#9 |
Участник
|
сделайте запрос в QueryAnaliser (Management studio) к табличке с мемо полем и посмотрите что вернется, ну только чтобы в поле было текста ну с 1000 символов.
Цитата:
![]() |
|
Теги |
ax4.0, memo, string, полезное |
|
|