|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
TMDeveloperРеально медленнее - факт! Не вижу факта. Только твои утверждения. Воспроизводимый пример на API - в студию! Кривые обёртки - фтопку. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 17:53 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
TMDeveloperТогда чем объяснить, что блоб медленнее варчара? Реально медленнее - факт!Факт - это воспроизводимый тесктейз. Пока его нет, это "подземный стук". ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 17:54 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
> Кривые обёртки - фтопку. Ты имеешь ввиду FIB+ и мое приложение?:) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 17:55 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
TMDeveloperЕсли кто-то спросит почему нельзя готовить пакет в фоне, отвечаю, потому что логика такая, не должен юзер во время подготовки пакета ничего изменять, поэтому modal окно с индикатором. Программа не сетевая.уровень изоляции снапшот запретили враги. От жеж негодяи! ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 17:55 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
TMDeveloperТы имеешь ввиду FIB+ и мое приложение?:) Именно. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 17:57 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
> уровень изоляции снапшот запретили враги. От жеж негодяи! Приложение однопользовательское со встроенным FB ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 17:58 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
2 Dimitry Sibiryakov > Именно. Ну если писать на API не используя FIB+ и др., тогда преимуществ у FB маловато остается. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 18:00 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
TMDeveloper> уровень изоляции снапшот запретили враги. От жеж негодяи! Приложение однопользовательское со встроенным FBИ что с того? Не вижу логики. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 18:04 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
TMDeveloperпреимуществ у FB маловато остается. Перед кем? Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 18:08 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
2 Dimitry Sibiryakov 2 kdv Ладно, забьем что быстрее, варчар или блоб. Не суть уже. Объясните пожалуйста это: Можно так: CREATE TABLE TEST_1 ( ASCI_1 VARCHAR(32764) CHARACTER SET ASCII, ASCI_2 VARCHAR(8186) CHARACTER SET ASCII ); Т.е. всего 32764+8186=40950 символов Можно и так: CREATE TABLE TEST_2 ( ASCI_1 VARCHAR(8186) CHARACTER SET ASCII, ASCI_2 VARCHAR(32764) CHARACTER SET ASCII ); Т.е. те же 40950 символов. А вот так, те же 40950 символов, уже нельзя: CREATE TABLE TEST_3 ( ASCI_1 VARCHAR(20475) CHARACTER SET ASCII, ASCI_2 VARCHAR(20475) CHARACTER SET ASCII ); Выдает ошибку про блок сайз. Почему? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 19:23 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
и ведь даже так нельзя!! CREATE TABLE TEST_4 ( ASCI_1 VARCHAR(10000) CHARACTER SET ASCII, ASCI_2 VARCHAR(10000) CHARACTER SET ASCII ); Ошибка про блок сайз. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 19:28 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
TMDeveloperи ведь даже так нельзя!! Считай на пальцах: (10000*4+2)+(10000*4+2) = 80004. 80004 больше чем 65535. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 19:32 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
2 Dimitry Sibiryakov > У тебя лимит в 64к преодолел конечный result set, который уже в кодировке utf8. Поля в ASCI, т.е. 100% в UTF8 они будут по 1 байту. Откуда берется переполнение 64к в "конечный result set, который уже в кодировке utf8."? > Считай на пальцах: (10000*4+2)+(10000*4+2) = 80004. 80004 больше чем 65535. Слушай, не тупи, Тогда почему можно (32764*4+2)+(8186*4+2)=131056+2+32744+2=163804 ?? Максимальное с двумя одинаковыми полями в ASCI можно так: CREATE TABLE TEST_5 ( ASCI_1 VARCHAR(8189) CHARACTER SET ASCII, ASCI_2 VARCHAR(8189) CHARACTER SET ASCII ); Это (8189*4+2)+(8189*4+2+)=32756+2+32756+2=65516. Т.е. в случае двух полей в ASCI баг налицо. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 19:47 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
TMDeveloperТогда почему можно Почему ты так уверен, что можно? Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 19:53 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
Потому что я сижу за компом и пробую как можно. В IBExpert-e таблица CREATE TABLE TEST_1 ( ASCI_1 VARCHAR(32764) CHARACTER SET ASCII, ASCI_2 VARCHAR(8187) CHARACTER SET ASCII ); В нее можно вставить. Потом перезакрыть БД, открыть таблицу - все видно, читается. Но вот редактировать, да, нельзя, "блок сайз" вылезает. Но при вставке картинок редактирование и не надо. Поэтому я не сразу заметил, что редактировать уже вставленное нельзя. За это сорри. Почему под поля ASCI в UTF8 резервируется память в 4 раза больше чем надо? В UTF8 символы ASCI всегда 1 байт, а не 4. (В UTF16 всегда 2 байта на все символы) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 20:02 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
про UTF16 я винду имею ввиду и в частности Delphi XE ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 20:04 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
Блин, это что, если БД в UTF8, то побарабану какие чарсеты полей? Все чарсеты будут в 4 байта переводиться?? Бред. Тогда нафига такой выбор чарсетов, если все они себя как UTF8 ведут. Тогда все поля в UTF8 и все... Попал я с переходом на юникод, просто ппц... :-( ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 20:08 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
Все чарсеты при выборке переводятся в чарсет коннекта. И это правильно. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 20:11 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
Хорошо, пусть переводятся. Но ведь строка в ASCI в UTF8 будет как есть. UTF8 плавающий формат, а не фиксированный, как UTF16. Коннект в UTF8, тогда памяти под строку "абвгд" надо 10 (или 12 с BOM) байт, а под строку "abcde" точно 5 (или 7 с BOM). Нафига все конвертировать в 4 байта? Хотя наверняка так - выделяется память под все поля без учета их чарсетов, т.е. тупо все по 4 байта, причем при использовании полей ASCI остается масса ненужно выделенной памяти. Это же не правильно, не рационально. Наверно нужно сначала анализировать чарсеты... Я разочарован в FB. Т.е. под строки даже в 10кб нужно использовать блоб? Это однозначно мертворожденное приложение получится... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 20:20 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
TMDeveloperвыделяется память под все поля без учета их чарсетов Ты знаешь функцию ICU которая бы для данного чарсета выдала максимальные размер его символа в UTF8? Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 20:25 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
Нет. Но если поле ASCI, то максимальный размер символа 1 байт всегда. Как можно символ с кодом меньше 128 впихнуть в 4 байта.. Стандарт UTF8 такое предусматривает... Интересно даже. Сейчас посмотрю. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 20:32 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
TMDeveloper , сделай отдельный коннект к базе с чарсетом NONE и передавай конкретно эти данные через него. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 20:40 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 20:47 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
2 Esperito Ну это уже решение на коленках, тоже самое, что все строки хранить кусками в варчарах в разных записях одной таблицы. Вопрос уже не про блобы и варчары, вопрос уже ппц... Принципиальный. С ужасом осознал что имеющиеся проекты на FB на юникод не перевести, проще начинать сначала и на другом сервере. А я то наивный думал, что в Delphi буду мучаться c PAnsiChar/PWideChar :-) В Delphi все перевелось на юникод в течении суток и прекрасно работает, а с FB просто патовая ситуация. Расстроился, честно, ппц... Здравый смысл: два поля, одно UTF8(10 символов) второе ASCI(10 символов). Во что превратится итоговая строка UTF8? Здравый смысл подсказывает что 10*4+10=50, а не 10*4+10*4=80. 30 байт просто зря выделены и являются паразитирующими. Навеяло, с баш.орг: Наш программер по телефону: Это вы рассуждаете с точки зрения здравого смысла, а не реализации в FB.... Может кто знает, на какой сервер можно срочно слинять? Может у Yaffil с этим получше? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 20:55 |
|
Длины полей и ограничения. Не понятно или глюк. FB2.5, IBExpert, UTF8+ASCI
|
|||
---|---|---|---|
#18+
2 hvlad Опа, забрезжила надежда. Скажи в двух словах, куда копать? Разве OCTETS не будет так же в 4 байта переводиться? Мне в таблице кроме этих двух полей в OCTETS надо еще поле в UTF8 под комментарий. Думаешь получится? Не будет из-за одного поля в UTF8 все в 4 байта переводиться? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2011, 20:59 |
|
|
start [/forum/topic.php?fid=42&startmsg=37190868&tid=1599875]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
166ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 305ms |
total: | 577ms |
0 / 0 |