|
|
|
Как бороться с длиной строки более 1962 bytes в ASE 12.5
|
|||
|---|---|---|---|
|
#18+
Народ, кто-нибудь знает, как получить на выходе из хранимой процедуры поля, сумма которых более 1962 bytes. У меня при компиляции процедуры ругается так: Warning: Row size (2576 bytes) could exceed row size limit, which is 1962 bytes. Как с этим бороться? Ну, очень нужно чтобы и не ругалась, и все данные были. Уменьшать длину полей уже некуда, все по минимуму.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2004, 17:44 |
|
||
|
Как бороться с длиной строки более 1962 bytes в ASE 12.5
|
|||
|---|---|---|---|
|
#18+
BadgerНарод, кто-нибудь знает, как получить на выходе из хранимой процедуры поля, сумма которых более 1962 bytes. У меня при компиляции процедуры ругается так: Warning: Row size (2576 bytes) could exceed row size limit, which is 1962 bytes. Ну, во-первых, это видимо не ошибка, а предупреждение. Оно could exceed , т.е. "может превысить", а может и не превысить. Как бороться - ну, ответ очень зависить от того, насколько оно надо и почему надо. У тебя там запись содержить поля переменной длины, и если они все будут заполнены по максимуму, то они просто не влезут на страницу данных, которая у тебя, по видимому, 2k. И влезть они не могут ни в каком случае. Но если при эксплуатации таких ситуаций не будет, то все будет работать. Ежели нет, будут ошибки при вставках/изменениях данных. Чтобы расширить ограничение на суммарную длину строки, тебе придется увеличить размер страницы, но это - переустановка сервера, сервер работает только с одной длиной страницы. Также это может привести к потерям производительности всвязи с увеличением нижнего порога размера ввода-вывода до размера новой страницы (меньше страницы быть не может). Из менее радикальных средств - разбиение таблицы на несколько по вертикали (перенесение части полей в другую таблицу, связанную с этой отношением 1:1) или преобразование длинных полей в text или image - они храняться всегда на отдельных страницах - но с ними сложнее работать в TSQL и на клиенте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2004, 11:18 |
|
||
|
Как бороться с длиной строки более 1962 bytes в ASE 12.5
|
|||
|---|---|---|---|
|
#18+
Ну можно еще посоветовать записывать данные в ТМП-овую таблицу и потом селектом оттуда ее брать. Вообще-то способов довольно много и они сильно зависят от конкретных условий и ограничений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2004, 11:44 |
|
||
|
Как бороться с длиной строки более 1962 bytes в ASE 12.5
|
|||
|---|---|---|---|
|
#18+
Все так и есть, 2k и так далее по тексту. Немного подумав, наверное, для меня лучший вариант: Код: plaintext 1. 2. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2004, 12:22 |
|
||
|
Как бороться с длиной строки более 1962 bytes в ASE 12.5
|
|||
|---|---|---|---|
|
#18+
BadgerНемного подумав, наверное, для меня лучший вариант: Код: plaintext 1. 2. Зачем двумя вызовами ? JOIN сделай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2004, 15:23 |
|
||
|
Как бороться с длиной строки более 1962 bytes в ASE 12.5
|
|||
|---|---|---|---|
|
#18+
MasterZivЗачем двумя вызовами ? JOIN сделай.Мне нужно результат процедуры получить на клиенте в DataWindow PowerBuilder(а), а такой JOIN, наверное, опять даст результат: Row size (2576 bytes) от чего я и пытался уйти.... Да и нет у меня ни одного пользователя, которому разрешено SELECT делать, только EXECUTE procedure;1 ... ... Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2004, 17:24 |
|
||
|
Как бороться с длиной строки более 1962 bytes в ASE 12.5
|
|||
|---|---|---|---|
|
#18+
Да еще раз - оно не влазит при ХРАНЕНИИ строки в пределах одной страницы. А в наборе данных, отправляемом клиенту, может быть какая угодно длина строки - там нет ограничений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2004, 11:25 |
|
||
|
Как бороться с длиной строки более 1962 bytes в ASE 12.5
|
|||
|---|---|---|---|
|
#18+
MasterZivДа еще раз - оно не влазит при ХРАНЕНИИ строки в пределах одной страницы. А в наборе данных, отправляемом клиенту, может быть какая угодно длина строки - там нет ограничений. И жизнь стала прекрасной и удивительной... Огромное спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2004, 17:42 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=32701779&tid=2014204]: |
0ms |
get settings: |
14ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
59ms |
get topic data: |
14ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 242ms |
| total: | 406ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...