powered by simpleCommunicator - 2.0.48     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / чёрт-те что Firebird 4.0.1.2668
7 сообщений из 7, страница 1 из 1
чёрт-те что Firebird 4.0.1.2668
    #40114630
Gorynich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Шахматный мир в беспокойстве."...

Есть база на FB 2.5. Сделал бекап. Восстановил на FB 4.0. (Целостность базы после рестора проверял)
Выполняю запрос:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
select
  "Items"."BranID",
  "Items"."ItemID",
  "Items"."ItemName",
  "Items"."ItemPos",
  "Items"."UnitsInStock"
from
    "Items"
where
   "Items"."BranID" = 14500
order by
  "Items"."ItemPos"
FETCH FIRST 10 ROWS ONLY


в результате, то что и должно быть -
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
BranID	ItemID		ItemPos	UnitsInStock	ItemName
14500	2002497000	2293		0	Тоуз ін Хевен Хім т.в. 50 мл. чол.
14500	2002498000	2294		0	Тоуз ін Хевен Хім т.в. 100 мл. чол.
14500	2002499000	2295		0	Тоуз ін Хевен Хьо т.в. 50 мл. жін.
14500	2002500000	2296		0	Тоуз ін Хевен Хьо т.в. 100 мл. жін.+100 мл. лосьон
14500	2002501000	2297		0	Тоуз ін Хевен Хьо т.в. 30 мл. жін.
14500	2002502000	2298		0	Тоуз ін Хевен Хьо т.в. 100 мл. жін.
14500	2002503000	2299		0	Тоуз Н2О т.в. 100 мл. жін.
14500	2002504000	2300		0	Тоуз Тач т.в. 100 мл. жін.
14500	2002508000	2301		0	Тоуз т.в. 50 мл. жін.
14500	2002509000	2302		0	Тоуз т.в. 30 мл. жін.


делаю соединение с другой таблицей по внешнему ключу "Items"."BranID" (Branches <- 1:M -< Items)

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
select
  "Items"."BranID",
  "Items"."ItemID",
  "Items"."ItemPos",
  "Items"."UnitsInStock",
  "Items"."ItemName"
from
    "Items"
  inner join "Branches" on ("Branches"."BranID" = "Items"."BranID")
where
   "Items"."BranID" = 14500
order by
  "Items"."ItemPos"
FETCH FIRST 10 ROWS ONLY



в результате, не пойми что -

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
BranID	ItemID		ItemPos	UnitsInStock	ItemName
0	2002497000	2293	-31275	
0	2002498000	2294	-49183	
0	2002499000	2295	-31275	
0	2002500000	2296	-74900	
0	2002501000	2297	-21156	
0	2002502000	2298	-52799	
0	2002503000	2299	-35584	
0	2002504000	2300	-38917	
0	2002508000	2301	-29698	
0	2002509000	2302	-21461	


UnitsInStock - вычислимое поле по таблице Items.
ItemName - вообще забито пустотой, в других запросах в выводе этгом поля появлялся мусор.

но если из запроса убрать
Код: sql
1.
order by  "Items"."ItemPos"


или
Код: sql
1.
FETCH FIRST 10 ROWS ONLY



данные снова выводятся нормально
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
BranID	ItemID		ItemPos	UnitsInStock	ItemName
14500	2002502000	2298	0	Тоуз ін Хевен Хьо т.в. 100 мл. жін.
14500	2002499000	2295	0	Тоуз ін Хевен Хьо т.в. 50 мл. жін.
14500	2002500000	2296	0	Тоуз ін Хевен Хьо т.в. 100 мл. жін.+100 мл. лосьон
14500	2002501000	2297	0	Тоуз ін Хевен Хьо т.в. 30 мл. жін.
14500	2002503000	2299	0	Тоуз Н2О т.в. 100 мл. жін.
14500	2002504000	2300	0	Тоуз Тач т.в. 100 мл. жін.
14500	2002505000	2322	0	Т Тоуз ін Хевен Хьо т.в. 100 мл. жін.
14500	2002506000	2319	0	Т Тоуз Н2О т.в. 100 мл. жін.
14500	2002507000	2317	0	Т Тоуз Тач т.в. 100 мл. жін.
14500	2002508000	2301	0	Тоуз т.в. 50 мл. жін.


причем в другом, более громоздском запросе - правильность результатов зависели даже от того отображается какое-то поле (без закономерности) в результат или нет.

FIX:Если же в таблице Items сделать обновление, типа set ItemName = ItemName - запрос выводит данные правильно.

В ресторах FB25, FB3 - ткой проблемы нет. В FB4, FB5 - есть. В ISQL - результаты, соответственно, такие же.

Версии FB:
2.5.9.27154
3.0.8.33540
4.0.1.2668
5.0.0.313
...
Рейтинг: 0 / 0
чёрт-те что Firebird 4.0.1.2668
    #40114675
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А бекап выложить куда-либо (или переправить в личку) можешь?
...
Рейтинг: 0 / 0
чёрт-те что Firebird 4.0.1.2668
    #40114676
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gorynich
UnitsInStock - вычислимое поле по таблице Items

в нем подзапрос, что-ли?
...
Рейтинг: 0 / 0
чёрт-те что Firebird 4.0.1.2668
    #40114700
Gorynich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitr
Gorynich
UnitsInStock - вычислимое поле по таблице Items

в нем подзапрос, что-ли?

нет - арифметическоє выражение по столбцам Items
...
Рейтинг: 0 / 0
чёрт-те что Firebird 4.0.1.2668
    #40114701
Gorynich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitr
А бекап выложить куда-либо (или переправить в личку) можешь?


Да, сброшу, естественно.
...
Рейтинг: 0 / 0
чёрт-те что Firebird 4.0.1.2668
    #40114713
Gorynich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitr
А бекап выложить куда-либо (или переправить в личку) можешь?


Бекап базы намылил в личку.
Пока делал "обрез", заметил еще один эффект - удаление некоторых полей из Items меняет "данные" в результатах запроса.
Такое впечатление, что читаются данные по неправильному смещению.
...
Рейтинг: 0 / 0
чёрт-те что Firebird 4.0.1.2668
    #40114768
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
исправлено, спасибо
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / чёрт-те что Firebird 4.0.1.2668
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]