Access ошибка 3326

Access is able to update linked tables only when they have a primary key.
When they don’t have one, you’ll get the «This Recordset is not updateable» error.

If the underlying SQL Server table has a primary key, Access will usually detect it and use it in the linked table as well.

If the table does not have a primary key on the server, or if it’s a view and not a table, Access is not able to set a primary key by itself.

If you link a view manually per DSN, a window will pop up and ask you to select the columns which Access should consider as the primary key:

select unique record identifier

When you link the table DSN-less (i.e. per code) and you don’t specify a primary key, Access will link the table without primary key.

So I suppose that the table you’re talking about is either a view or it has no primary key.
When it was originally linked with DSN, someone selected the primary key in the popup window shown above.
When you re-linked it with your DSN-less code, you probably didn’t set the primary key, and that’s why you’re getting the «This Recordset is not updateable» error now.

Solution: After linking the table with your DSN-less code, explicitly set the primary key via VBA code.

Icon Ex Номер ошибки: Ошибка 3326
Название ошибки: Microsoft Access Error 3326
Описание ошибки: This Recordset is not updateable.
Разработчик: Microsoft Corporation
Программное обеспечение: Microsoft Access
Относится к: Windows XP, Vista, 7, 8, 10, 11

Оценка «Microsoft Access Error 3326»

Обычно люди ссылаются на «Microsoft Access Error 3326» как на ошибку времени выполнения (ошибку). Чтобы убедиться, что функциональность и операции работают в пригодном для использования состоянии, разработчики программного обеспечения, такие как Microsoft Corporation, выполняют отладку перед выпусками программного обеспечения. Хотя эти превентивные действия принимаются, иногда ошибки, такие как ошибка 3326, будут пропущены.

Ошибка 3326 также отображается как «This Recordset is not updateable.». Это распространенная ошибка, которая может возникнуть после установки программного обеспечения. Когда это происходит, конечные пользователи могут сообщить Microsoft Corporation о наличии ошибок «Microsoft Access Error 3326». Затем программисты могут исправить эти ошибки в коде и включить исправление, которое можно загрузить с их веб-сайта. Таким образом, когда ваш компьютер выполняет обновления, как это, это, как правило, чтобы исправить проблемы ошибки 3326 и другие ошибки внутри Microsoft Access.

В чем причина ошибки 3326?

В большинстве случаев вы увидите «Microsoft Access Error 3326» во время загрузки Microsoft Access. Вот три наиболее распространенные причины, по которым происходят ошибки во время выполнения ошибки 3326:

Ошибка 3326 Crash — Ошибка 3326 может привести к полному замораживанию программы, что не позволяет вам что-либо делать. Если данный ввод недействителен или не соответствует ожидаемому формату, Microsoft Access (или OS) завершается неудачей.

Утечка памяти «Microsoft Access Error 3326» — если есть утечка памяти в Microsoft Access, это может привести к тому, что ОС будет выглядеть вялой. Возможные причины из-за отказа Microsoft Corporation девыделения памяти в программе или когда плохой код выполняет «бесконечный цикл».

Ошибка 3326 Logic Error — логическая ошибка возникает, когда компьютер производит неправильный вывод, даже если вход правильный. Он материализуется, когда исходный код Microsoft Corporation ошибочен из-за неисправного дизайна.

В большинстве случаев проблемы с файлами Microsoft Access Error 3326 связаны с отсутствием или повреждением файла связанного Microsoft Access вредоносным ПО или вирусом. В большинстве случаев скачивание и замена файла Microsoft Corporation позволяет решить проблему. Если ошибка Microsoft Access Error 3326 возникла в результате его удаления по причине заражения вредоносным ПО, мы рекомендуем запустить сканирование реестра, чтобы очистить все недействительные ссылки на пути к файлам, созданные вредоносной программой.

Распространенные сообщения об ошибках в Microsoft Access Error 3326

Наиболее распространенные ошибки Microsoft Access Error 3326, которые могут возникнуть на компьютере под управлением Windows, перечислены ниже:

  • «Ошибка программного обеспечения Microsoft Access Error 3326. «
  • «Ошибка программного обеспечения Win32: Microsoft Access Error 3326»
  • «Извините за неудобства — Microsoft Access Error 3326 имеет проблему. «
  • «Файл Microsoft Access Error 3326 не найден.»
  • «Отсутствует файл Microsoft Access Error 3326.»
  • «Ошибка запуска в приложении: Microsoft Access Error 3326. «
  • «Microsoft Access Error 3326 не выполняется. «
  • «Microsoft Access Error 3326 выйти. «
  • «Неверный путь к приложению: Microsoft Access Error 3326.»

Проблемы Microsoft Access Error 3326 с участием Microsoft Accesss возникают во время установки, при запуске или завершении работы программного обеспечения, связанного с Microsoft Access Error 3326, или во время процесса установки Windows. Важно отметить, когда возникают проблемы Microsoft Access Error 3326, так как это помогает устранять проблемы Microsoft Access (и сообщать в Microsoft Corporation).

Истоки проблем Microsoft Access Error 3326

Проблемы Microsoft Access и Microsoft Access Error 3326 возникают из отсутствующих или поврежденных файлов, недействительных записей реестра Windows и вредоносных инфекций.

В частности, проблемы с Microsoft Access Error 3326, вызванные:

  • Недопустимые разделы реестра Microsoft Access Error 3326/повреждены.
  • Зазаражение вредоносными программами повредил файл Microsoft Access Error 3326.
  • Microsoft Access Error 3326 ошибочно удален или злонамеренно программным обеспечением, не связанным с приложением Microsoft Access.
  • Другое приложение, конфликтующее с Microsoft Access Error 3326 или другими общими ссылками.
  • Поврежденная установка или загрузка Microsoft Access (Microsoft Access Error 3326).

Продукт Solvusoft

Загрузка
WinThruster 2023 — Проверьте свой компьютер на наличие ошибок.

Совместима с Windows 2000, XP, Vista, 7, 8, 10 и 11

Установить необязательные продукты — WinThruster (Solvusoft) | Лицензия | Политика защиты личных сведений | Условия | Удаление

Search code, repositories, users, issues, pull requests…

Provide feedback

Saved searches

Use saved searches to filter your results more quickly

Sign up

  • #1

Not quite sure where to put this one, as I don’t know if it is a query issue, coding, or just form design?

I have attached a cut down copy of my database and the problem lies with when I try to update a date field in the subform.

To replicate the error, open the mainform, choose «Daily» & «Overdue». The subform should then appear with an «update» button next to the data. If you then choose update and select «yes» what should happen next is the «AssetDateLastSchedMaint» (long name I know) field should then be updated with todays date, the query rerun and all should be fine and dandy.

But, as usual I have run into a problem. When I choose to update the date I receive the error: «Runtime error 3326, This recordset is not updateable».

I actually based this form, subform, query and code on another in the same database and they all work fine :( . Could someone have a look for me and point out to me how to fix it.

Thanks in advance.

  • CutDown.zip

    55.3 KB · Views: 271

  • #2

Runtime error 3326 — Recordset is not updateable

Should I be trying to update the table directly and not via the form?

  • #3

The query that drives the subform is not updateable. Open the query in design view and unclick the summation button on the toolbar. This is the large backwards E. Note that the «Group By» modifiers disappear? Save the query. Retry your process. Note that the subform now shows the data but also allows you to add a new record? To suppress this behaviour, set the subform’s AllowAdditions property = false.

  • #4

Thanks very much for the pointer, that was indeed the source of my problem.:D

I am trying to output a crosstab query from Access to Excel, and I read that in 2010 it’s better to use the OutputTo method as opposed to the TransferSpreadsheet method. I have the following line of code, and sometimes it works flawlessly, and other times it kicks VBA run-time error 3326: This recordset is not updateable. I’m not trying to update any data at all—I simply want to export the resulting data to Excel.

DoCmd.OutputTo acOutputQuery, "qryStates_1_Crosstab", "ExcelWorkbook(*.xlsx)", my_filename, False

Is there something else I need to be doing to make it output correctly?

braX's user avatar

braX

11.5k5 gold badges20 silver badges34 bronze badges

asked May 28, 2014 at 20:14

rryanp's user avatar

1

DoCmd

Make a temporary table with the results of the crosstab query:

DoCmd.RunSQL "SELECT INTO tempTable FROM qryStates_1_Crosstab"

and then export the table to Excel instead of the query:

DoCmd.OutputTo acOutputQuery, "tempTable", "ExcelWorkbook(*.xlsx)", my_filename, False

afterwards (or before the next export) either clear the data from the temp table:

DoCmd.RunSQL "DELETE * FROM tempTable"

or just delete the table:

DoCmd.DeleteObject acTable, "tempTable"

Each of these actions will popup warnings and confirmations. If you don’t want the warnings, you can toggle them off with:

DoCmd.SetWarnings False

just make sure to turn the warnings back on at or before the end of the sub:

DoCmd.SetWarnings False

DoCmd can do a lot more cool stuff too. Read up about it here.

answered Nov 24, 2017 at 11:17

ashleedawg's user avatar

ashleedawgashleedawg

20.4k9 gold badges73 silver badges107 bronze badges

1

I had the same issue and ashleedawg’s answer worked, it just had a few typos:

DoCmd.RunSQL "SELECT * INTO tempTable FROM qryStates_1_Crosstab"

Missing the asterisk

DoCmd.OutputTo acOutputTable, "tempTable", acFormatXLSX, my_filename, False

acOutput type should be table, not query. I used acFormatXLSX rather than the string style. I don’t know if that matters or not but it was already a part of the code I had typed so I let it stay when adapting her answer.

answered Dec 4, 2019 at 15:05

sickvisionz's user avatar

Понравилась статья? Поделить с друзьями:
  • Acronis ошибка 2203
  • Access ошибка 3201
  • Access ошибка 32003
  • Acronis код ошибки 65520
  • Access ошибка 3167