|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
NewTop Вы не правильно задаете вопросы. Не читаете вопросы, а пытаетесь сразу умничать. P.S. Я вот ни разу не программист, но и мне непонятно, почему "типа самые умные", не в состоянии выложить текст. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2021, 14:41 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
NewTop Isql правильно вычисляет размер поля, значит виноват IBExpert. Эксперт там ничего не вычисляет. Как и isql, впрочем. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2021, 14:52 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
NewTop Модератор, прошу закрыть тему. Причина ошибки, очевидно, в чём-то другом, а не в том, что показалось с первого взгляда. Может, всё же выясним? Или уже не интересно, отказываешься от использования IBExpert и FB3 как неправильных? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2021, 15:00 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
IBExpert NewTop Isql правильно вычисляет размер поля, значит виноват IBExpert. Эксперт там ничего не вычисляет. Как и isql, впрочем. Поясните пожалуйста в чем тогда ошибка? При редактирований view через isql динамические поля получаются нужного размера, а через IBExpert размер урезан. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2021, 14:32 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
NewTop, IBExpert при "редактировании" показывает скрипт, который он собирается для этого редактирования применить. Он не отличается от того, что ты isql скармливал? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2021, 14:39 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
NewTop Поясните пожалуйста в чем тогда ошибка? При редактирований view через isql динамические поля получаются нужного размера, а через IBExpert размер урезан. Я не знаю, в чем ошибка. Могу только подтвердить, что проблема есть и воспроизводится в эксперте и под FB 3, и под FB 4. В обоих случаях CREATE VIEW передается на сервер так, как его написал пользователь. Дальнейшими вычислениями занимается сервер, поэтому вины эксперта я здесь не вижу. А воспроизведение в isql от тебя просят для того, чтобы исключить влияние багов и особенностей сторонних инструментов, к которым разработчики сервера отношения не имеют. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 04:42 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
IBExpert Могу только подтвердить, что проблема есть и воспроизводится в эксперте и под FB 3, и под FB 4 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 09:00 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
hvlad Как её воспроизвести ? В isql - не знаю. В эксперте выполнить скрипт: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
После чего уже видно, что поле RENT вьюхи имеет тип VARCHAR(16) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 09:49 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
IBExpert, нет, varchar(24). ibe 2021.5.14.1, FB 3.0.7.33374, чарсет базы NONE. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 11:13 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
kdv IBExpert, нет, varchar(24). ibe 2021.5.14.1, FB 3.0.73347, чарсет базы NONE. p.s. выполнял НЕ скрипт, а create/commit/create/commit в sql editor. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 11:14 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
kdv IBExpert, нет, varchar(24). ibe 2021.5.14.1, FB 3.0.7.33374, чарсет базы NONE. Проблема в кодировке, в которой коннектишся к базе. Под 1251 проблем нет, 24 длина получается. Под utf8 - 16. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 11:28 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
demon1992 Под utf8 - 16. Точно. У меня utf8 была. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 11:32 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
а вот так: Код: sql 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 12:10 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
Мимопроходящийа вот так: А вот так скорее всего получишь хрень, ибо интродюсеры - не то чем кажутся. В isql со скриптом в UTF-8 воспроизводится? Текст запроса реально в какой кодировке? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 12:28 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovВ isql со скриптом в UTF-8 воспроизводится? я воспроизвел. Тоже 16 получается. Файл скрипта uft8, кодировка utf8, set names utf8 и все дела, символы во вью нормальные, и т.д. Собственно, если упростить пример, и сделать CREATE OR ALTER VIEW VW_TB2( RENT) AS select 'от '||' до '||' дней' from tb1 ; то мы увидим, что столбец у view - varchar(4), что совершенно импоссибль, инкредибль, и мерде (при том что литералы по 3, 4 и 5 символов, как на заказ). А значит - ФБ правильно делает по 6 символов на smallint. Но хрен поймешь как вычисляет длину строки. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 12:51 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Мимопроходящийа вот так: А вот так скорее всего получишь хрень, ибо интродюсеры - не то чем кажутся. В isql со скриптом в UTF-8 воспроизводится? Текст запроса реально в какой кодировке? UTF-8. Всегда по умолчанию использую его. Я был уверен, что вин-1251 уже практический ни кем не используется. И при тестировании через isql я не обратил внимание на кодировку, посмотрел только размер поля. Могут ли разработчики без трекера начать исправлять эту ошибку? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 13:57 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
NewTop, могут. Но почему ты думаешь что они должны начать делать это прямо сейчас? Трекер он для того и есть, чтобы внести как напоминалку. Разработчики смотрят в трекер на баги, фичи и улучшения и выстраивают себе приоритет по их выполнению. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 14:03 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
kdv я воспроизвел. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 14:49 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
hvlad, могобыть. надо ж еще и без конкатенации проверить. вечером. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 15:46 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
kdv, Ржака Код: sql 1. 2. 3. 4. 5. 6.
VARCHAR(2) !!!! Так что можно и без русских букв. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 15:49 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
kdv, что-то я не очень понимаю пока. Вот это выдало select 'ab ' from tb1 varchar(2), как бы, причина понятна - пробелы справа урезаются, т.к. это char исходно. Тут селект * from view так и выдает 'ab'. А вот если сделать select rent||'a' from view тут же лезет ошибка переполнения, expected length 3, actual 11. А вот select 'ab '||'cd ' from tb1 varchar(3) , что пока для меня загадка (типа должно быть или 2, или 4). И при наличии данных в tb1 сразу тупо overflow идет при любом селекте. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 15:58 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
Длина поля высчитывается как целое число от деления на 4. Если будет 'ab' или 'abcd' или 'abcdefg' будет char(1). Если 'abcdefgh' то 2 и т.д. Хз как ты получил 3 при 'ab '||'cd ', может перекомпилить забыл или коммит сделать, у меня получается varchar(1). ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 16:42 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
demon1992, Я проверял по простому - методически. Код: plaintext 1.
Съедает-ли их компиляция view? select view('ab ')||'a' - ошибка переполнения. Значит нет, не съедает. До "деления" я в проверках не доехал, но да 'abcdefg' - да, превращается в varchar(1). 'abcdefgh' - да, превращается в varchar(2). А 'abcdefgh ' - всё равно varchar(2). Почему тогда 'ab ' varchar(2), а не varchar(1) ? 3/4 = 0+2 ? вместо 0+1 :-) И varchar(3) я получил на конкатенации Код: plaintext
2+8+2 = 12/4=3. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 17:01 |
|
View Firebird 3. Динамические поля
|
|||
---|---|---|---|
#18+
demon1992, вот теперь бы еще сформулировать для трекера. И для русских букв в юникоде, получается, "кто-то делит" не на 4, а на 2. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2021, 17:06 |
|
|
start [/forum/topic.php?fid=40&msg=40091031&tid=1559940]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
160ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 283ms |
0 / 0 |