powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ошибка
8 сообщений из 8, страница 1 из 1
Ошибка
    #32156624
sui13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При переводе всей БД в SQL, в одной из клиетских программ (ACCSESS) возникли ошибки при создании записей.

Необходимо использование параметра dbSeeChanges с OpenRecordset при доступе к таблице SQLServer, которая имеет столбец IDENTITY. (Ошибка 3622)

Вот код:
Private Sub New_Click()

Dim Dbs As Database
Dim Rst As Recordset, Visits As Recordset

Set Dbs = CurrentDb
Set Rst = Dbs.OpenRecordset("Customers", dbOpenDynaset)

With Rst
.AddNew
.Update
End With

DoCmd.OpenForm "NewVisits"
DoCmd.GoToRecord , , acLast
Forms!NewVisits.STATUS = "Good"
Set Visits = Dbs.OpenRecordset("Visits", dbOpenDynaset)
With Visits
.AddNew
!CustID = Forms!NewVisits.CustID
.Update
End With
End Sub

При тупой замене "dbOpenDynaset" на "dbSeeChanges"
выдает ошибку Invalid argument.

Что делать? Помогите, плиз человеку
...
Рейтинг: 0 / 0
Ошибка
    #32156626
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
> При тупой замене "dbOpenDynaset" на "dbSeeChanges" выдает ошибку Invalid argument.

Истессно. Потому что у команды OpenRecordset синтаксис не такой.

dbOpenDynaset должно остаться на месте, а dbSeeChanges должно идти через запятую следующим параметром.
...
Рейтинг: 0 / 0
Ошибка
    #32156627
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Кстати, в приведенном отрывке программы сильно недостает команд .Close
...
Рейтинг: 0 / 0
Ошибка
    #32156631
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и я брошу свой камень в огород.
Не используйте DAO для доступа к MS SQL-серверу. Надоть ADO.
...
Рейтинг: 0 / 0
Ошибка
    #32156690
sui13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, помогло, но в этом же коде чуть ниже выскочила еще одна ошибка.
Ругается на: With Rst
.AddNew
>>> .Update
End With

Ошибка: Run-time error '3146': ODBC -- call failed

Что делать не знаю.. :((
...
Рейтинг: 0 / 0
Ошибка
    #32156698
-=Alexey=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пиши вместо
Set Rst = Dbs.OpenRecordset("Customers", dbOpenDynaset)

Set Rst = Dbs.OpenRecordset("Customers", dbOpenDynaset, dbSeeChanges)
и все будет ок

и нужно взять за правило, при открытии таблиц с SQL Server содержащих поле identity использовать dbSeeChanges
...
Рейтинг: 0 / 0
Ошибка
    #32156728
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
разбериясь с ссылками на библиотеки, явно описывай свои объявления
Код: plaintext
1.
2.
dim rs as DAO.Recodset
dim rs as ADODB.Recodset
...
Рейтинг: 0 / 0
Ошибка
    #32156860
sui13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ситуация следующая.
При переводе всей БД ACCSESS в SQL, в клиетских программах (ACCSESS)
возникли ошибки... и не одна.
(Сами клиентские части с базами ACCSESS ессно работали нормально)

Я не программист, и не знаю аксес...

Предлагаю подзаработать денег.
Ситуация ясна, надо будет подправить "косяки". Например еще некоторые
запросы неккоректно выполняются и т.д.

Если интересно - звоните 8-903-783-0080 или 255-1933
Кирилл
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ошибка
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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