Совместный доступ к базе двух приложений - err 3262

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Совместный доступ к базе двух приложений - err 3262

Сообщение Alexanbar » 03.06.2004 (Чт) 20:00

Как бороться с этой ошибкой? Если я использую базу в рамках одного Приложения, никакой ошибки нет - куча элементов Data. А при запуске другог приложения выводится эта ошибка (Couldn't lock table ...) , и само приложение грузится дольше. А я, собствено, и не собирался lock-ать таблицу.

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Сообщение Alexanbar » 03.06.2004 (Чт) 22:56

Причину ошибки нашёл - пытаюсь модифицировать структуру таблицы, в то время, как она уже используется другим приложением.


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

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 03.06.2004 (Чт) 23:17

Через ошибку! Ставь On Error GoTo метка, а после метка: пиши, что если ошибка №3262, то надо подождать.
Нет меня больше

XATTAB
Новичок
Новичок
Аватара пользователя
 
Сообщения: 25
Зарегистрирован: 08.05.2004 (Сб) 23:48
Откуда: Russia,Saint-Peterburg

Сообщение XATTAB » 03.06.2004 (Чт) 23:54

Не легче ли просто включить возможность совместного доступа к таблице? :!: :D
Кто не был на марсе, тот много потерял!!!

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Сообщение Alexanbar » 04.06.2004 (Пт) 8:50

1) Пока я так и сделал, т.е. при получении ошибки закрываю базу и выхожу из процедуры. Недостаток этого метода - некоторая неприятная задержка.
2) А как включить совместный доступ? Да и наверное, этот номер не пройдёт- одно приложение просто работает с базой - чтение, удаление, запись, а другое пробует изменить структуру базы, т.е. добавить поля, если таковых нет, и изменить их параметры.

codemaster
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 604
Зарегистрирован: 13.02.2004 (Пт) 13:35

Сообщение codemaster » 04.06.2004 (Пт) 11:05

Alexanbar писал(а):Причину ошибки нашёл - пытаюсь модифицировать структуру таблицы, в то время, как она уже используется другим приложением.



Ты действительно модифицируеш структуру таблицы или всетаки
добавляешь в данные в таблицу ?

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Сообщение Alexanbar » 04.06.2004 (Пт) 22:36

Да, модифицирую. В начале запуска приложения (Form_load) запускаю процедуру создания базы данных (если её нет) и добавления полей (если они отсутствуют). Это удобно, поскольку позволяет автоматически создавать базу данных при первом запуске программы, а при обновлении приложения автоматически корректировать структуру базы, если это необходимо.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 32

    TopList