Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.12.07;
Скачать: CL | DM;

Вниз

убрать монопольный доступ   Найти похожие ветки 

 
MishaLuk   (2008-05-14 16:06) [0]

база - MS Access на сервере,
с ней работают проект на VB Studio (ASPX)  и программа на delphi
delphi блокирует базу и использование базы совместно не получается, aspx говорит что файл занят
как это разрулить?

из delphi - ADOConnection1
Provider=MSDASQL.1;Persist Security Info=False;Data Source=daf1;Extended Properties="DSN=daf;DBQ=C:\MyWebForm\d1.mdb;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;"

из VB - OdbcConnection1
MaxBufferSize=2048;FIL=MS Access;DSN=monit;PageTimeout=5;UID=admin;DriverId=25

ADOConnection.Mode ставлю cmShareDenyNone все равно пишет
ERROR [IM006] [Microsoft][Диспетчер драйверов ODBC] Ошибка SQLSetConnectAttr драйвера
ERROR [HY000] [Microsoft][Драйвер ODBC Microsoft Access] Невозможно использовать "(нет данных)"; файл уже используется.

те похоже Delphi устанавливает монопольный доступ
как его отменить?
подскажите, не встречался с таким
спасибо


 
sniknik ©   (2008-05-14 17:13) [1]

> ADOConnection.Mode ставлю cmShareDenyNone
сюда лезть следует в последнюю очередь, а лучше вообще не трогать

readonly/монопольность может быть прописан в DSN, может сам файл базы запрещено редактировать, а может нет возможности в папке с базой файл блокировок создать.
это надо сначала проверять.

> те похоже Delphi устанавливает монопольный доступ
только если так написано (специально/случайно), сам по себе никогда.


 
MishaLuk   (2008-05-14 17:21) [2]

может нет возможности в папке с базой файл блокировок создать.

как так может быть?
пока не работает прогр на Delphi есть возможность, а когда работает нет?
вы хотите сказать что проект на aspx  не может создать свой файл блокировок потому что его создала прога на Delphi?

вообще этот случай типичен или нет?
те в принципе все должно работать вместе ?
спасибо


 
sniknik ©   (2008-05-14 17:47) [3]

> как так может быть?
по разному может быть. что конкретно в твоем случае происходит ты не написал.

> те в принципе все должно работать вместе ?
и в принципе и без принципов, если написано без блокирования (по умолчанию так), и админ чегонибудь не то не запретил, то без проблем работает вместе (2, 3..5 коннектов, больше не рекомендуется, хотя может и больше (у меня както изза дурости менеджеров на аксесной базе 46 пользователей работало. недолго, как узнали поменяли на mssql)).


 
Palladin ©   (2008-05-14 17:48) [4]


> у меня както изза дурости менеджеров на аксесной базе 46
> пользователей работало

фигасе :) и как? jet держал?


 
sniknik ©   (2008-05-14 19:33) [5]

не жаловались. ;)
конкретики не знаю, т.к. "у меня" это не совсем точно, точнее с моей программой у клиентов, узнали чисто случайно, гдето через пару месяцев они захотели добавить клиентов (место лицензируется) до 48-ми, и вот уже эта заявка попала ко мне.
сейчас кстати у них уже где то 80 мест, но уже с mssql-ем естественно.


 
sniknik ©   (2008-05-14 19:40) [6]

> эта заявка попала ко мне.
блин. опять не совсем точно. я не занимаюсь отгрузкой программ, просто я про это узнал, новый работник внедрения не знал как пришивается ключь на лицензии, и пришел почемуто ко мне за помощью. остальные вроде на выездах были... случайно в общем.


 
MishaLuk   (2008-05-16 11:41) [7]

уже переписал все под Microsoft.Jet.OLEDB
и все равно
невозможно выполнение aspx страницы при запущенной программе на дельфи (обращаются к одной БД)

соединяюсь из VB (страница aspx) с БД через Microsoft.Jet.OLEDB соединение
Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database Locking Mode=1;Data Source="C:\MyWebForm\d1.mdb";Mode=Share Deny Write;Jet OLEDB:Engine Type=5;Provider="Microsoft.Jet.OLEDB.4.0";Jet OLEDB:System database=;Jet OLEDB:SFP=False;persist security info=False;Extended Properties=;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Create System Database=False;Jet OLEDB:Don"t Copy Locale on Compact=False;User ID=Admin;Jet OLEDB:Global Bulk Transactions=1

программа на дельфи
в дельфи строка подключения
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyWebForm\d1.mdb;Mode=ReadWrite;Persist Security Info=False

невозможно выполнение aspx страницы при запущенной программе на дельфи
результат работы aspx страницы

Exception Details: System.Data.OleDb.OleDbException: Невозможно использовать ""; файл уже используется.
(хотя 2 копии программы на дельфи работают с одной БД , запщены одновременно)
как это решить?


 
Anatoly Podgoretsky ©   (2008-05-16 12:07) [8]

> MishaLuk  (16.05.2008 11:41:07)  [7]

Так у тебя в VB запрещено, и при чем тут тогда Дельфи


 
sniknik ©   (2008-05-16 12:38) [9]

> как это решить?
строку подключения в VB сделай такую же ка в дельфи.


 
sniknik ©   (2008-05-16 12:41) [10]

вернее вот так, в дельфи тоже поменяй
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyWebForm\d1.mdb;Persist Security Info=False


 
MishaLuk   (2008-05-16 12:48) [11]

поменял и в дельфи  и в VB
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyWebForm\d1.mdb;Persist Security Info=False

все равно при работающей дельфи aspx страница выдает
Exception Details: System.Data.OleDb.OleDbException: Невозможно использовать ""; файл уже используется.
дельфи закрываю и aspx работает :(


 
sniknik ©   (2008-05-16 13:02) [12]

> aspx работает :(
под каким юзером? у него есть права на папку с базой, он может менять файл блокировок?

запусти 2 копии своей страницы, без проги на делфи, вторая что выдает?


 
Anatoly Podgoretsky ©   (2008-05-16 13:12) [13]

Это часть сообещения <"";> таких баз конечно нет.


 
MishaLuk   (2008-05-16 14:08) [14]


> запусти 2 копии своей страницы, без проги на делфи, вторая
> что выдает?

работают вместе две страницы нормально

> под каким юзером? у него есть права на папку с базой, он
> может менять файл блокировок?

пока это крутиться все на локальной машине под администратором компа +domain admins


> Это часть сообещения <"";> таких баз конечно нет.

извините мне кажеться если бы не было то не писала бы файл уже используется
и как дельфи может убивать БД?
спасибо


 
sniknik ©   (2008-05-16 14:44) [15]

> и как дельфи может убивать БД?
никак.
см. [1]
> только если так написано (специально/случайно), сам по себе никогда.


 
sniknik ©   (2008-05-16 14:54) [16]

> извините мне кажеться если бы не было то не писала бы файл уже используется
разобраться почему "" вместо имени файла нужно обязательно.

+ по теме
http://delphimaster.net/view/3-1208237063/


 
MishaLuk   (2008-05-16 15:07) [17]

фантастика
перенес с компа где разрабатываю на комп где будет все эскплуатироваться
и все работает (дельфи с aspx)
разница- другие настройки доступа на папку и настройки IIS?

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


 
MishaLuk   (2008-05-16 15:28) [18]

надо было на паку с базой дать "все" полный доступ в "безопасность"

где про это почитать??
потому что встречал что даешь "все" полный доступ и перестает прога работать

спасибо



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

Текущий архив: 2008.12.07;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.013 c
15-1223209888
Dez3uk
2008-10-05 16:31
2008.12.07
таблицы в Word и Exel


2-1225090077
саня
2008-10-27 09:47
2008.12.07
Смена IP адреса


15-1223180939
TUses
2008-10-05 08:28
2008.12.07
Москвичи, подскажите хорошие магазины с компьютерными запчастями?


2-1225276588
031178
2008-10-29 13:36
2008.12.07
Как сравнить время


2-1224830949
AlekseyB
2008-10-24 10:49
2008.12.07
Как загрузить файл в ListBox ???