Форум: "Базы";
Текущий архив: 2002.11.28;
Скачать: [xml.tar.bz2];
ВнизОткрытие табличек только на чтение через ADO Найти похожие ветки
← →
kombat (2002-11-12 15:54) [0]Уважаемые мастера! Может кто-то подскажет как при использовании TADOConnection и TADOQuery открывать файлы табличек в режиме Read, а не Read+Write (имеется ввиду права на файл в системе), а то при открытии по умолчанию файл блокируется и другие пользователи не могут в него писать. А данная задача вообще должна только читать данные.
← →
Kuusiniemi (2002-11-12 16:08) [1]ConnectionString := "...;Mode=Read|Share Deny None;..." не подойдет?
← →
stone (2002-11-12 16:10) [2]LockType := ltReadOnly
← →
kombat (2002-11-12 16:19) [3]в файле настроек соединения стоит [oledb]
[oledb]
; Everything after this line is an OLE DB initstring
Provider=MSDASQL.1;Password="";Persist Security Info=True;User ID=user; Mode=Read;Extended Properties="Driver={Microsoft Visual FoxPro Driver};UID=;SourceDB=w:\Account\Work;SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=Machine;Null=Yes;Deleted=Yes;";Initial Catalog=w:\Account\Work
TADOConnection.Mode=cmRead
TADOQuery.CursorType=ctStatic
TADOQuery.LockType=ltReadOnly
И все это не помогает
даже делая TADOConnection.Close
Локи с файлов не снимаются до закрытия приложения
← →
kombat (2002-11-12 16:24) [4]Share Deny None
тоже не помогает
← →
sniknik (2002-11-12 16:30) [5]просто без наворотов
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\;Extended Properties=dBase IV;Persist Security Info=False
по умолчанию Share Deny None
а вот то что TADOConnection.Close не помогает подозрительно, гдето еще открыт (отладчик Дельфи?) посмотри программа должна стартовать со значением TADOConnection.Active = false.
← →
sniknik (2002-11-12 16:43) [6]то же самое для твоего ОДБС-шного драйвера
Provider=MSDASQL.1;Extended Properties="DRIVER={Microsoft Visual FoxPro Driver};SourceDB=d:\;SourceType=DBF;"
проверь, после будеш параметры добавлять, только зачем? если они остаются теми же что по умолчанию действуют.
← →
kombat (2002-11-12 17:13) [7]Я сменил провайдера в udl файле, подействовало
[oledb]
Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=w:\account\work\;Mode=Read|Share Deny None;Extended Properties=dBase IV;Persist Security Info=True
что интересно, открытых файлов вообще нет, т.е. открываемый файл через расшареный ресурс не отмечен как открытый
Параметры во всех ADO объектах оставил как раньше, т.е. Read
Есть еще вопрос, как в тексте SQL передать имя таблички с путем
вот так ругается qPmnt.SQL.Text := " SELECT * FROM "+#39+ Trim(sFileName)+#39+" ORDER BY Date_opl, Naim "
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.11.28;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c