Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как проверить наличие необходимых индексов?
|
|||
|---|---|---|---|
|
#18+
Всем привет! У меня проблема (по-моему, довольно жизненная, но для меня она стала настоящей засадой), которая требует срочного решения. Буду рад услышать любые советы и предложения!!! Есть пачка DBF таблиц на Fox Pro, есть к ним набор CDX файлов. База регулярно будет обновляться и нет гарантий, что с индексами будет все в порядке (но известно, что в текущей базе с ними все ОК). В программе на C# (тут играет ключевую роль не сам язык, а его отрешенность от языка VFP) хочется проверить, что для таблицы существуют все необходимые индексы (точнее, что все необходимые наборы полей проиндексированы) - чтоб работа с БД не тормозила. И, наконец, самое главное: я полный профан в VFP!!! А сделать все надо быстро и времени на изучение этой штуковины нет :(((( Кто и что посоветует? Всем откликнувшимся заранее большое спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2003, 18:34 |
|
||
|
Как проверить наличие необходимых индексов?
|
|||
|---|---|---|---|
|
#18+
"Лучше день потерять - потом за час долететь" (С) Изучи Фокс. Так будет вернее. Тем более, что научиться открывать таблицы, индексировать и т.д., то бишь работать с данными, можно за пару часов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2003, 08:06 |
|
||
|
Как проверить наличие необходимых индексов?
|
|||
|---|---|---|---|
|
#18+
Привет ! Как лежат dbf как отдельные таблицы или в составе контйнера баз данных(*.DBC) ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2003, 09:49 |
|
||
|
Как проверить наличие необходимых индексов?
|
|||
|---|---|---|---|
|
#18+
В Фоксе есть функции KeyMatch() - поиск подходящего индекса для выражения aTaginfo() - создает массив с информацией о всех тегах TagCount() - возвращает количество тегов Возможно, еще помогут Tag(), TagNo(), Key() В общем, ничего сложного :) Удачи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2003, 12:52 |
|
||
|
Как проверить наличие необходимых индексов?
|
|||
|---|---|---|---|
|
#18+
Спасибо еще раз всем откликнувшимся! 2 _GUEST: Про пару часов не уверен, но даже если это и так, то как мне потом из своего кода запускать фоксовую программку? 2 ЗВН: Как отдельные таблицы. 2 karly: Спасибо за подсказку. Однако, см. вопрос выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2003, 11:22 |
|
||
|
Как проверить наличие необходимых индексов?
|
|||
|---|---|---|---|
|
#18+
Фокс является обычным OLE-сервером. Т.е. можно создать объект Fox, и обращаться к его свойствам и методам. Методов, собственно, немного: DoCmd() - выполнить команду Eval() - вернуть значение выражения DataToClip() - скопировать данные из таблицы в клипборд RequestData() - вернуть массив из таблицы. Пример кода на каком нибудь языке ;) Код: plaintext 1. Можешь написать простенькую программку на фоксе, и вызывать ее извне. Код: plaintext Если Фокса не знаешь совсем, маленькая подсказка - чтобы вернуть значение из программы MyProc, нужно в программе написать Код: plaintext Когда освоишь вышесказанное, пиши сюда - объясню (я или еще кто-нибудь :) ) как создать инсталляшку, чтобы не устанавливать Фокс у клиента. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2003, 12:16 |
|
||
|
Как проверить наличие необходимых индексов?
|
|||
|---|---|---|---|
|
#18+
Да, досадная ошибочка ;) Вместо Код: plaintext Следует читать Код: plaintext Либо Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2003, 12:24 |
|
||
|
Как проверить наличие необходимых индексов?
|
|||
|---|---|---|---|
|
#18+
2 karly: Спасибо за оконченную идею! Но я, похоже, нашел более красивый способ (упс, сорри - не хотел обидеть фоксовиков :). Он, по крайней мере, короче в моей программке вышел Вот он: у класса ConnectionClass в ADO есть метод OpenSchema() (он позволяет вытащить различные метаданные, в том числе и индексы). Поскольку код я пишу на C#, то у меня есть еще более удобный способ - метод GetOleDbSchemaTable() у класса OleDbConnection. Но инсталляшку фоксового рантайма мне, возможно, все равно придется делать, так что берегитесь следующих вопросов!-))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2003, 12:53 |
|
||
|
|

start [/forum/topic.php?fid=41&fpage=414&tid=1597951]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
26ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
| others: | 225ms |
| total: | 353ms |

| 0 / 0 |
