Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Dimich_1
Зарегистрирован: 07.02.2003 Сообщения: 3 Откуда: Ангарск
|
Добавлено: Пт Фев 07 2003 10:37 Заголовок сообщения: Мужики помогите! |
|
|
Проблема вот в чем (в Delphi) Есть неиндексированная БД состоящия из двух таблиц. Связь у них просто хрень какая-то Связываются они по физическому расположению записи (т.е. запись из второй таблицы индефицируется по номеру физического расположения из первой таблицы). Что можно сделать: 1)Скопировать их куда-то, добавить в первую таблицу столбец и присвоить каждой записи номер i:=i+1 Ведь I будет совпадать с физическим номером! Индекснуть записи и рулить НО ЭТО НАДО ДЕЛАТЬ КАЖДЫЙ ДЕНЬ 2)Без всяких добавлений узновать физическое расположение записи из первой таблицы и по ней ориентироваться. ТАК КАК ЭТО СДЕЛАТЬ? Заранее спасибо |
|
Вернуться к началу |
|
|
Борис Гость
|
Добавлено: Пт Фев 07 2003 16:13 Заголовок сообщения: Нужно бы узнать формат используемых таблиц, так как (+) |
|
|
1) не во всех БД физическое положение записи имеет какой-то смысл; 2) если БД допускает создание индекса по вычисляемому значению произвольного выражения, то можно сделать индекс по выражению "НОМЕР_ЗАПИСИ()".
PS. Если есть возможность ------- >>1)Скопировать их куда-то, добавить в первую таблицу столбец и присвоить каждой записи номер i:=i+1 >>Ведь I будет совпадать с физическим номером! Индекснуть записи и рулить ------- то почему бы не исправить программу, так как, по-видимому, есть исходные тексты? |
|
Вернуться к началу |
|
|
Dimich_1
Зарегистрирован: 07.02.2003 Сообщения: 3 Откуда: Ангарск
|
Добавлено: Пн Фев 10 2003 05:04 Заголовок сообщения: Re: Нужно бы узнать формат используемых таблиц, так как (+) |
|
|
Сама табличка (*.dbf) driver: PARADOX Исправить саму программу невозможно т.к. исходников нема Я вот подумал может с помощью Locate перемещатся на запись и возвращать RecNo |
|
Вернуться к началу |
|
|
Борис Гость
|
Добавлено: Пн Фев 10 2003 13:24 Заголовок сообщения: Что-то я не понял: ты говоришь о возможности использовать Locate и одновременно, что нет исходников. Сформулируй вопрос однозна |
|
|
- |
|
Вернуться к началу |
|
|
Dimich_1
Зарегистрирован: 07.02.2003 Сообщения: 3 Откуда: Ангарск
|
Добавлено: Ср Фев 12 2003 04:30 Заголовок сообщения: Re: Что-то я не понял: ты говоришь о возможности использовать Locate и одновременно, что нет исходников. Сформулируй вопрос одн |
|
|
))))))))))))))) Так вот! До меня существовала програмулька которая выплевывает файлики (типа запросы)) ) Моя должна проверять это место и при нахождении файла выполнять запрос Но это не главное
Данные для выполнения запроса должны браться из всёвремяпополняющейся базы (состоящия из двух табличек) Так вот! Эта база не индексирована Уникальных полей нет! Таблицы связываются по физическому расположению записей (т.е. запись из второй таблички находится по физическому расположению записи из первой) А вопрос был уже выше
Может есть какое-то решение а? За ранее спасибо)))))))))))))) Извеняюсь за неясность Всякое бывает! |
|
Вернуться к началу |
|
|
fox_
Зарегистрирован: 12.02.2003 Сообщения: 5
|
Добавлено: Ср Фев 12 2003 15:50 Заголовок сообщения: а проще можешь? |
|
|
2 таблицы + хрень в качестве связи-> работа какой-то программули (кода нет)-> 1 выплюнутая таблица ,.... или 2 таблицы - это выплюнутые файлики, а ты их должен проверять в одном месте...?
СОВЕТ: НАУЧИСЬ МЫСЛИТЬ ЯСНО! а потом ПРОБУЙ ОБ'ЯСНЯТЬ.... и проблемы (c Delphi) больше не будет |
|
Вернуться к началу |
|
|
Борис Гость
|
Добавлено: Ср Фев 12 2003 18:04 Заголовок сообщения: Условие, наконец, понято. А что, тебе, собственно, нужно делать? (+) |
|
|
Если нужно работать с двумя таблицами как с одной, содержащей столбцы обеих, то в дельфях, полагаю, это и так, без привлечения SQL, есть или легко сделать подходящий объект. А если непременно хочется реляционную таблицу устроить, то алгоритм в исходном вопросе представляется вполне подходящим. |
|
Вернуться к началу |
|
|
|