Форум программистов, компьютерный форум, киберфорум
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
1 / 1 / 1
Регистрация: 04.04.2012
Сообщений: 78
1

Ошибка "Файл базы данных занят" при попытке подключения к ней

14.07.2014, 21:14. Показов 1155. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
работаю с бд через шарп . C:\Temp\Паспорт.fdb" в этой директории потом папку темп перекидываю на другой диск а эту папку удаляю. но при удалении ругается что Паспорт.fbd занят. вроде как стираю все коннекты. что не так


C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 FbConnectionStringBuilder fb_con = new FbConnectionStringBuilder();
               fb_con.Charset = "WIN1251"; //используемая кодировка
               fb_con.UserID = "SYSDBA"; //логин
               fb_con.Password = "masterkey"; //пароль
               fb_con.Database = @"C:\Temp\Паспорт.fdb"; //путь к файлу базы данных
               fb_con.ServerType = 0; //указываем тип сервера (0 - "полноценный Firebird" (classic или super server), 1 - встроенный (embedded))
               //создаем подключение
               fb = new FbConnection(fb_con.ToString()); //передаем нашу строку подключения объекту класса FbConnection
               fb.Open(); //открываем БД
string update1371 = string.Format("UPDATE VSPR1371 SET SI3={0:d} where si1={1:d}",IDshape, SidShape);
                                    string update1377 = string.Format("update VSPR1377 set si3={0:d} where si1={1:d}",IDshape, SidShape);
                                   
                                    FbTransaction fbt = fb.BeginTransaction();
                                    FbCommand UpdateSql1371 = new FbCommand(update1371, fb);
                                    FbCommand UpdateSql1377 = new FbCommand(update1377, fb);
                     
                                    //1371
                                    try
                                    {
                                        UpdateSql1371.Transaction = fbt;
                                        UpdateSql1371.ExecuteNonQuery();
                                        fbt.Commit();
                                        UpdateSql1371.Dispose();
                                    }
                                    catch
                                    {
                                        fbt.Rollback();   
                 fb.Close();
  Directory.Delete(tempUnZIP, true);
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.07.2014, 21:14
Ответы с готовыми решениями:

Ошибка при попытке подключения к базе данных '80004005'
Многоуважаемый ALL! При попытке подключения к базе данных происходит такая ошибка: ...

Ошибка при попытке вывода данных из базы
Configuration File (php.ini) Path (C:\Windows) Версия PHP Version 5.6.15, когда загружаю скрипт,...

Ошибка при попытке создания базы данных
помогите пожалуйста , ошибка при попытке создание базы данных

Ошибка при попытке отображения информации из базы данных
Здравствуйте есть такой вот вопрос. Подключил я к visual studio 2012 oracle database 11g xe,...

1
3 / 3 / 2
Регистрация: 05.06.2014
Сообщений: 23
15.07.2014, 01:37 2
ничо не понял...

как работает бд коннекты:

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

и если вы ввели изменения в исходную бд (удалили, переименовали, перенесли, изменили структуры), сперва требуется удалить её из коннектов, затем удалить датасет, который создан на её основе.
затем заносить её снова и называть датасет прошлым именем. тем самым обновив все структуры.

вроде так
0
15.07.2014, 01:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.07.2014, 01:37
Помогаю со студенческими работами здесь

Файл занят используется другим процессом при попытке его удаления
Помогите пожалуйста, знаю, уже было кучу раз, но ничего из уже предложенного не помогает. ...

При повторной попытке подключиться к базе сообщается, что файл уже занят
добрый день, я подключаю базу данных к проекту, получаю данные из базы, заношу их в DataSet,...

Ошибка подключения при переводе Базы данных из SQL SERVER в Mysql
Второй день пытаюсь перевести базу из SQL SERVER на Mysql через Workbench. :wall: Оба сервера...

Ошибка при попытке сохранения данных в XML файл
При попытке сохранения данных в XML файл вылетает ошибка "Ссылка на объект не указывает на...

Ошибка драйвера при попытке подключения к БД
Пытаюсь сделать выборку из бд на движке фирмы, в которой работаю. При подключении к бд(mysql)...

Ошибка при попытке подключения: DBX Error
rad studio xe mysql 5.5.13 win 7 x64 ultimate пытаюсь подключиться к mysql с помощью dbexpress....

Ошибка 651 при попытке подключения к интернету
Здравствуйте. Помогите пожалуйста с проблемой. Обычно пользовался интернетом через роутер. Но когда...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru