Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Последовательные операции над БД (VB.NET + ACCESS ) / 5 сообщений из 5, страница 1 из 1
16.04.2008, 14:05
    #35258926
workhard
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательные операции над БД (VB.NET + ACCESS )
Приветствую!

VB.NET + MS ACCESS
При выполнении последовательных операций (Обновить данные; Выбрать данные) первая не успевает завершиться (Вроде как освободить ресурсы).
В итоге, вторая операция возвращает ошибку.
Как правильные люди правильно решают такую задачу?
...
Рейтинг: 0 / 0
16.04.2008, 15:18
    #35259241
workhard
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательные операции над БД (VB.NET + ACCESS )
Ошибочка: "Обновление невозможно; установлена блокировка"
возникает только в Run-time

Использую OleDbCommand.ExecuteNonQuery
...
Рейтинг: 0 / 0
17.04.2008, 14:27
    #35261949
workhard
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательные операции над БД (VB.NET + ACCESS )
Добавляю
Ошибка возникает периодически.
Зависит от объема данных. Да, и от рантайма не зависит.
Команды выполняется через OleDbCommand.ExecuteNonQuery

Код: plaintext
INSERT INTO A () SELECT FROM 'связанная таблица Excel1'
>Обновление невозможно; установлена блокировка
Код: plaintext
INSERT INTO A () SELECT FROM 'связанная таблица Excel2'

Как же не влетать в блокировку?
...
Рейтинг: 0 / 0
17.04.2008, 17:08
    #35262642
Думающий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательные операции над БД (VB.NET + ACCESS )
Код то можно увидеть целиком, как у вас обновление происходит, как выборка?
...
Рейтинг: 0 / 0
18.04.2008, 17:49
    #35265558
workhard
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательные операции над БД (VB.NET + ACCESS )
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Public Overloads Function ExecuteSQL(ByVal SQL As String, _
                                        ByVal Param() As OleDbParameter) As Boolean

        Dim myCommand As OleDbCommand = CreateCommand(SQL, Param, CommandType.Text)
 
       Try
            myCommand.ExecuteNonQuery()
            Return True
        Catch e As Exception
            Return False
        End Try

End Function

Вся беда в этом коде, аврально взятом как пример «эффективного» слоя данных (пойду сожгу эту книгу)
В myCommand соединение явно не закрывается!

Закрыл соединение – закрыл тему!
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Последовательные операции над БД (VB.NET + ACCESS ) / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]