2010-02-15 7 views
1

Я пытаюсь установить соединение ODBC с MS Access с помощью приложения Asp.net. я получаю сообщение об ошибке:Подключиться к базе данных Access с помощью ODBC через ASP.net

ERROR [HY000] [Microsoft][ODBC Microsoft Access Driver] The Microsoft Office Access database engine cannot open or write to the file '(unknown)'. It is already opened exclusively by another user, or you need permission to view and write its data. 
ERROR [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed 
ERROR [HY000] [Microsoft][ODBC Microsoft Access Driver] The Microsoft Office Access database engine cannot open or write to the file '(unknown)'. It is already opened exclusively by another user, or you need permission to view and write its data 

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

уже судимый дать чтения \ разрешения на запись в «IUsr_my-машину», но она до сих пор не решить проблему

ТКСА

ответ

2

Это не право. Это то, что база данных фактически открыта в MS Access где-то. Открытие базы данных доступа с помощью самого MS Access отличается от подключения к ней из другой программы. MS Access блокирует db во время работы над ним. Вам нужно найти, кто его открыл в MS Access, и избить их по голове, пока они не закрывают программу доступа.

После того, как вы это сделаете, сообщите мне в мой офис, чтобы я мог побить вас самостоятельно, чтобы выбрать Access как базу данных в Интернете. Это очень глупое дело, потому что Access - это механизм процесса или рабочего класса. Веб-сайтам действительно нужен механизм серверного класса, такой как SQL Server Express, который может улучшить работу с одновременными пользователями.

+0

какой? доступ отстой? Я должен попробовать sql-сервер? почему я не подумал об этом раньше? о да, я DID. используя доступ не глупый, это мужество, поэтому вы не должны угрожать людям, которые пытаются сделать сумасшедшие вещи с таким доступом! , но tks для наконечника в любом случае. (не работает, кстати) – DJPB

+0

@DJPB Вам не нужно использовать сервер sql - просто не используйте доступ. И это не слепая ненависть. Я скептически отношусь к sqlite, OpenOffice Base и любому другому процессу _in process_. Будь моим гостем, если вы предпочитаете использовать Oracle, MySql, PostGRESQL или даже DB2. Просто не используйте встроенный движок в Интернете. –

+0

просто шучу немного, не поймите меня неправильно. У меня уже есть связи с двумя работающими двигателями db, и я согласен, что это гораздо лучший подход. Мне было просто любопытно узнать, что такое поведение с доступом или, например, превосходное. и хорошо, я видел это ... кстати, (если кто-то сталкивается с такой же проблемой), он работает, когда вы даете разрешения на чтение и запись группе «все». но это плохая политика. – DJPB

0

Для тех, кто крут здесь с той же ошибкой. Попробуйте поместить файл MDB в свою папку домена и затем создать DNS. Это решило мою проблему.