powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / Необъяснимая дискриминация типов в DBase
7 сообщений из 7, страница 1 из 1
Необъяснимая дискриминация типов в DBase
    #32738647
Подскажите, люди добрые, что бы сие значило?
Имеется 2 связанных DBaseвских таблицы. Поля в них имеют типы как NUMERIC, так и CHARACTER. Нужно сделать выборку - 1 столбик из 1й таблицы, 1 из 2й.

select A.a1, B.b1
from A, B
where A.id=B.id

Правильно? Вроде бы работает, но исключительно для столбцов типа CHARACTER. Если a1 или b1 NUMERIC - SQL Explorer после некоторых раздумий вылетает с радостным сообщением "Acces violation 0000000 и т/д".
Для пущей загадочности - если ограничить выборку (там где-то время указывается) до какого-то определенного времени - и с NUMERIC полями работает, а чуть больше - опять та же ошибка...

Может кто-нибудь объяснить сей загадочный феномен?
...
Рейтинг: 0 / 0
Необъяснимая дискриминация типов в DBase
    #32739824
Фотография savosin_sergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хотелось бы взглянуть на dbf'ы, или хотя бы узнать, какой у них размер.. как происходит подключение -- через odbc или bde? может один из файлов повреждён где-то посередине, вот и валится при просмотре всех данных.
можно попробовать упаковать эти таблицы какой-либо программой просмотра dbf (типа dbu)
может dbf покажешь? прикрепи к сообщению в архиве?
...
Рейтинг: 0 / 0
Необъяснимая дискриминация типов в DBase
    #32740031
Ежик и т.д.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
savosin_sergey
хотелось бы взглянуть на dbf'ы, или хотя бы узнать, какой у них размер.. как происходит подключение -- через odbc или bde?

Размер ок. 30 Мб. Вообще-то их много - по 3 таблицы за каждый день и я экспериментировал с разными. Подключаюсь я через BDE.

Вчера вечером в ходе экспериментов поменял строчку
where A.id=B.id
на
where В.id=А.id
и все заработало....
...
Рейтинг: 0 / 0
Необъяснимая дискриминация типов в DBase
    #32740042
Ежик и т.д.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В общем, я все равно не понимаю, почему от перестановки правой и левой части уравнения меняется "исполнимость" запроса. При чем, как я уже говорил - сей феномен выявляется только с 1 и более численными полями...
...
Рейтинг: 0 / 0
Необъяснимая дискриминация типов в DBase
    #32740324
Фотография savosin_sergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да уж, отстой.. мож дело в индексах, а может в большом объёме данных. у тебя индексы есть на эти числовые поля?

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

кстати, можешь попробовать подключиться к этим алисам через odbc -- создай obdc-соединение (где-то в панели управления), а затем в borlandовском sqlExplorer'е открой его, и выполни свой запрос...
...
Рейтинг: 0 / 0
Необъяснимая дискриминация типов в DBase
    #32740363
Фотография savosin_sergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
этот гад (bde или sqlExplorer из 5го c++builder'а) при выполнении скромного запроса по двум 40метровым таблицам создаёт огромную временную (500 мегабайт) таблицу, а потом на неё же ругается, что открыть не может. вывод: в sqlExplorer'е нечего выполнять запросы на выборку из нескольких таблиц. связанным таблицам необходимо присваивать подходящие индексы (во всяких компонентах)
...
Рейтинг: 0 / 0
Необъяснимая дискриминация типов в DBase
    #32749790
golsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что вы хотите? SQL для dbf выполняется на клиенте. Нет ни какой статистики по данным для оптимизации запроса - поэтому все что есть сам текст запроса. Например A.id имеет 1000 различных значений, а B.id - 5, в зависимости от порядка на клиенте каждая запись В будет сравниваться с 1000 значениями или каждая запись А с 5. Даже если число равное то начинает играть размер записей А и В. Несколько сумбурно, но смысл по моему ясен. Так что запрос оптимизировать надо девелоперу.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / Необъяснимая дискриминация типов в DBase
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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