Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];

Вниз

ADO удаление записей   Найти похожие ветки 

 
Степан   (2004-02-25 19:31) [0]

Здарвствуйте. Как можно в ADO, dbf-файлы, физически удалить помеченные на удаление записи программно(к примеру аналог команды PACK в FoxPro). Что бы уменьшить размеры файлов.


 
sniknik ©   (2004-02-25 19:50) [1]

только если провайдер это поддерживает, както к примеру ODBC VFP драйвер, так команда так и называется PACK.


 
Степан   (2004-02-26 17:15) [2]

Базы у меня локальные. Использую я стандартные компоненты Дельфи TADOTable и TADOQuery.


 
sniknik ©   (2004-02-26 19:01) [3]

Степан   (26.02.04 17:15) [2]
это в данном случае неважно, к кому подключаешся? -> OLEDB Jet, OLEDB VFP, ODBC VFP driver, ODBC dBase driver (или DSN от них "Visual FoxPro Tables/dBASE Files"), ...... ?

из указаных в половине (те что с VFP) есть sql команда PACK, в остальных придется копированием в пустую таблицу и заменой ей оригинальной.

кстати совет, TADOTable не используй никогда.


 
Степан   (2004-02-27 17:33) [4]

Спасибо за помощь sniknik.


 
SergP ©   (2004-02-29 04:25) [5]

>кстати совет, TADOTable не используй никогда.

Небольшой вопрос: Почему? Иногда ведь бывает что намного удобнее использовать T[ADO]Table чем T[ADO]Query.


 
sniknik ©   (2004-02-29 15:11) [6]

потому что ADO это серверная технология, сделано так, даже локальная таблица будет перекачиватся через ядро (движок) и в общем открытие таблицы ADOTable аналогично запросу select * from tablename, что чаще всего избыточно (не надо потом "чтото ваш ADO тормозит")

правда есть как всегда исключения ;о), но лутше думаю использовать правильный стиль и изредка пользоватся исключениями чем всегда даже когда это не приносит выгоды. и потом даже для исключений(если уж пользоватся) удобнее ADODataSet возможностей больше.

известные мне "исключения"
очевидное: маленькая таблица всегда нужна полностью. (ничто не мешает сделать полный запрос в этом случае)
драйвера VFP: открывает таблицу как есть аналогично как в фокспро в собственном рабочем пространстве без перекачки. недостатки тоже очевидны и вытекают из самого способа доступа, если таблицы лежат не локально, трафик... ну понятно если все всегда перекачивается при любом действии. и "труднодоступность" рабочих пространств через SQL, так например команда требующая эксклюзивного доступа таже PACK TABLE не работает если уже делался селект этой таблици в данном коннекте (открыто в другом рабочем пространстве).
работает так даже если использовать ADOQuery.
Jet: режим директтабле. (жаль что это единственный драйвер поддерживаюший этот режим наряду с нормальным) тут только опасность использовать его на нелокальной базе (ну если пользуешся недумая то сам дурак).

насчет того что TADOTable удобнее тебе(??? не привык просто к ADODataSet), то это ничего не значит надо так как удобнее системе и тогда не будет лишних тормозов.


 
NewD   (2004-03-01 07:26) [7]

Жаль у Адо нет возможности ограничивать считывание строк как в БДЕ - приходится это делать в инструкции SQL.
Может где-то можно это прописать - кто знает ?


 
sniknik ©   (2004-03-01 14:59) [8]

может кто и знает (возможно даже я ;о)), но не пойму чего именно "как в BDE" ограничивать?
опиши подробнее что имееш в виду (считай что BDE я совсем не знаю, поэтому по скудному намеку в вопросе угадать смысл мне не дано)

а вообще все ограничения/возможности мало зависят от ADO, больше от движка/sql сервера к которому подключон, и общение с ним идет именно через инструкции sql...


 
VLAD-MAL   (2004-03-01 15:31) [9]

Небольшой вопрос: Почему? Иногда ведь бывает что намного удобнее использовать T[ADO]Table чем T[ADO]Query.

По кочану. Как только разберешься, как работают ADO - компоненты, которые не xxxTable, сам поймешь. Эти xxxTable вообще какой-то засланный враг в Borland придумал.

Извините за резкость, наболело.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.036 c
14-1077798853
race1
2004-02-26 15:34
2004.03.28
удалённый рабочий стол


3-1077631653
Floppy
2004-02-24 17:07
2004.03.28
ADO - MSAccess. Не могу


7-1072851443
Andrey V.
2003-12-31 09:17
2004.03.28
Прослушать com-порт


8-1068987245
fiction
2003-11-16 15:54
2004.03.28
Визуализация звука


3-1077137878
ser_ega
2004-02-18 23:57
2004.03.28
BDE





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский