Error 3073 access

Error 3073 Microsoft Access Error 3073 errors can freeze or crash your computer and may lead to possible malware infections. Follow these easy steps to fix your Runtime Errors errors quickly and simply.

How to fix the Runtime Code 3073 Microsoft Access Error 3073

This article features error number Code 3073, commonly known as Microsoft Access Error 3073 described as Operation must use an updateable query.

About Runtime Code 3073

Runtime Code 3073 happens when Microsoft Access fails or crashes whilst it’s running, hence its name. It doesn’t necessarily mean that the code was corrupt in some way, but just that it did not work during its run-time. This kind of error will appear as an annoying notification on your screen unless handled and corrected. Here are symptoms, causes and ways to troubleshoot the problem.

Definitions (Beta)

Here we list some definitions for the words contained in your error, in an attempt to help you understand your problem. This is a work in progress, so sometimes we might define the word incorrectly, so feel free to skip this section!

  • Access — DO NOT USE this tag for Microsoft Access, use [ms-access] instead
  • Access — Microsoft Access, also known as Microsoft Office Access, is a database management system from Microsoft that commonly combines the relational Microsoft JetACE Database Engine with a graphical user interface and software-development tools
  • Microsoft access — Microsoft Access, also known as Microsoft Office Access, is a database management system from Microsoft that commonly combines the relational Microsoft JetACE Database Engine with a graphical user interface and software-development tools

Symptoms of Code 3073 — Microsoft Access Error 3073

Runtime errors happen without warning. The error message can come up the screen anytime Microsoft Access is run. In fact, the error message or some other dialogue box can come up again and again if not addressed early on.

There may be instances of files deletion or new files appearing. Though this symptom is largely due to virus infection, it can be attributed as a symptom for runtime error, as virus infection is one of the causes for runtime error. User may also experience a sudden drop in internet connection speed, yet again, this is not always the case.

Fix Microsoft Access Error 3073 (Error Code 3073)
(For illustrative purposes only)

Causes of Microsoft Access Error 3073 — Code 3073

During software design, programmers code anticipating the occurrence of errors. However, there are no perfect designs, as errors can be expected even with the best program design. Glitches can happen during runtime if a certain error is not experienced and addressed during design and testing.

Runtime errors are generally caused by incompatible programs running at the same time. It may also occur because of memory problem, a bad graphics driver or virus infection. Whatever the case may be, the problem must be resolved immediately to avoid further problems. Here are ways to remedy the error.

Repair Methods

Runtime errors may be annoying and persistent, but it is not totally hopeless, repairs are available. Here are ways to do it.

If a repair method works for you, please click the upvote button to the left of the answer, this will let other users know which repair method is currently working the best.

Please note: Neither ErrorVault.com nor it’s writers claim responsibility for the results of the actions taken from employing any of the repair methods listed on this page — you complete these steps at your own risk.

Method 1 — Close Conflicting Programs

When you get a runtime error, keep in mind that it is happening due to programs that are conflicting with each other. The first thing you can do to resolve the problem is to stop these conflicting programs.

  • Open Task Manager by clicking Ctrl-Alt-Del at the same time. This will let you see the list of programs currently running.
  • Go to the Processes tab and stop the programs one by one by highlighting each program and clicking the End Process buttom.
  • You will need to observe if the error message will reoccur each time you stop a process.
  • Once you get to identify which program is causing the error, you may go ahead with the next troubleshooting step, reinstalling the application.

Method 2 — Update / Reinstall Conflicting Programs

Using Control Panel

  • For Windows 7, click the Start Button, then click Control panel, then Uninstall a program
  • For Windows 8, click the Start Button, then scroll down and click More Settings, then click Control panel > Uninstall a program.
  • For Windows 10, just type Control Panel on the search box and click the result, then click Uninstall a program
  • Once inside Programs and Features, click the problem program and click Update or Uninstall.
  • If you chose to update, then you will just need to follow the prompt to complete the process, however if you chose to Uninstall, you will follow the prompt to uninstall and then re-download or use the application’s installation disk to reinstall the program.

Using Other Methods

  • For Windows 7, you may find the list of all installed programs when you click Start and scroll your mouse over the list that appear on the tab. You may see on that list utility for uninstalling the program. You may go ahead and uninstall using utilities available in this tab.
  • For Windows 10, you may click Start, then Settings, then choose Apps.
  • Scroll down to see the list of Apps and features installed in your computer.
  • Click the Program which is causing the runtime error, then you may choose to uninstall or click Advanced options to reset the application.

Method 3 — Update your Virus protection program or download and install the latest Windows Update

Virus infection causing runtime error on your computer must immediately be prevented, quarantined or deleted. Make sure you update your virus program and run a thorough scan of the computer or, run Windows update so you can get the latest virus definition and fix.

Method 4 — Re-install Runtime Libraries

You might be getting the error because of an update, like the MS Visual C++ package which might not be installed properly or completely. What you can do then is to uninstall the current package and install a fresh copy.

  • Uninstall the package by going to Programs and Features, find and highlight the Microsoft Visual C++ Redistributable Package.
  • Click Uninstall on top of the list, and when it is done, reboot your computer.
  • Download the latest redistributable package from Microsoft then install it.

Method 5 — Run Disk Cleanup

You might also be experiencing runtime error because of a very low free space on your computer.

  • You should consider backing up your files and freeing up space on your hard drive
  • You can also clear your cache and reboot your computer
  • You can also run Disk Cleanup, open your explorer window and right click your main directory (this is usually C: )
  • Click Properties and then click Disk Cleanup

Method 6 — Reinstall Your Graphics Driver

If the error is related to a bad graphics driver, then you may do the following:

  • Open your Device Manager, locate the graphics driver
  • Right click the video card driver then click uninstall, then restart your computer

Method 7 — IE related Runtime Error

If the error you are getting is related to the Internet Explorer, you may do the following:

  1. Reset your browser.
    • For Windows 7, you may click Start, go to Control Panel, then click Internet Options on the left side. Then you can click Advanced tab then click the Reset button.
    • For Windows 8 and 10, you may click search and type Internet Options, then go to Advanced tab and click Reset.
  2. Disable script debugging and error notifications.
    • On the same Internet Options window, you may go to Advanced tab and look for Disable script debugging
    • Put a check mark on the radio button
    • At the same time, uncheck the «Display a Notification about every Script Error» item and then click Apply and OK, then reboot your computer.

If these quick fixes do not work, you can always backup files and run repair reinstall on your computer. However, you can do that later when the solutions listed here did not do the job.

Other languages:

Wie beheben Fehler 3073 (Microsoft Access-Fehler 3073) — Der Vorgang muss eine aktualisierbare Abfrage verwenden.
Come fissare Errore 3073 (Errore di Microsoft Access 3073) — L’operazione deve utilizzare una query aggiornabile.
Hoe maak je Fout 3073 (Microsoft Access-fout 3073) — De bewerking moet een bijwerkbare query gebruiken.
Comment réparer Erreur 3073 (Erreur Microsoft Access 3073) — L’opération doit utiliser une requête pouvant être mise à jour.
어떻게 고치는 지 오류 3073 (마이크로소프트 액세스 오류 3073) — 작업은 업데이트 가능한 쿼리를 사용해야 합니다.
Como corrigir o Erro 3073 (Erro 3073 do Microsoft Access) — A operação deve usar uma consulta atualizável.
Hur man åtgärdar Fel 3073 (Microsoft Access-fel 3073) — Operationen måste använda en uppdaterbar fråga.
Как исправить Ошибка 3073 (Ошибка Microsoft Access 3073) — Операция должна использовать обновляемый запрос.
Jak naprawić Błąd 3073 (Błąd Microsoft Access 3073) — Operacja musi używać zapytania, które można aktualizować.
Cómo arreglar Error 3073 (Error de Microsoft Access 3073) — La operación debe utilizar una consulta actualizable.

The Author About The Author: Phil Hart has been a Microsoft Community Contributor since 2010. With a current point score over 100,000, they’ve contributed more than 3000 answers in the Microsoft Support forums and have created almost 200 new help articles in the Technet Wiki.

Follow Us: Facebook Youtube Twitter

Last Updated:

10/05/22 06:37 : A Windows 10 user voted that repair method 4 worked for them.

Recommended Repair Tool:

This repair tool can fix common computer problems such as blue screens, crashes and freezes, missing DLL files, as well as repair malware/virus damage and more by replacing damaged and missing system files.

STEP 1:

Click Here to Download and install the Windows repair tool.

STEP 2:

Click on Start Scan and let it analyze your device.

STEP 3:

Click on Repair All to fix all of the issues it detected.

DOWNLOAD NOW

Compatibility

Requirements

1 Ghz CPU, 512 MB RAM, 40 GB HDD
This download offers unlimited scans of your Windows PC for free. Full system repairs start at $19.95.

Article ID: ACX06453EN

Applies To: Windows 10, Windows 8.1, Windows 7, Windows Vista, Windows XP, Windows 2000

Speed Up Tip #8

Disable Fancy Windows Visual Effects:

If you care about speed more than aesthetics you can always disable those fancy visual effects in Windows. You can do that by going to the Performance Options in your Windows Advanced System Settings. Simply, tick off those fancy buttons, sliding menus, and glossy icons to increase your computer’s performance.

Click Here for another way to speed up your Windows PC

Microsoft & Windows® logos are registered trademarks of Microsoft. Disclaimer: ErrorVault.com is not affiliated with Microsoft, nor does it claim such affiliation. This page may contain definitions from https://stackoverflow.com/tags under the CC-BY-SA license. The information on this page is provided for informational purposes only. © Copyright 2018

title keywords f1_keywords ms.prod ms.assetid ms.date

Operation must use an updatable query. (Error 3073)

jeterr40.chm5003073

jeterr40.chm5003073

access

4d304da6-ed0a-4819-8d1f-ba55bf9a41e9

06/08/2017

Operation must use an updatable query. (Error 3073)

Applies to: Access 2013 | Access 2016

You tried to run, open, or modify a query that is not updatable.

Possible causes:

  • You attempted to run a query that tried to update a field that cannot be updated. For example, you may have created the query in such a way that you tried to update a field on the one side of a one-to-many relationship.

  • You tried to use the obsolete OpenQueryDef method on a query that is in a database opened for read-only access.

The database is read-only for one of the following reasons:

  • You used the OpenDatabase method or the Visual Basic Data control, and opened the database for read-only access.

  • The database file has been defined as read-only in your network operating system.

  • In a network environment, you do not have write privileges for the database file.

Close the database, resolve the read-only condition, and then reopen it for read/write access.

  • You do not have permission to make changes to the query. To change your permission assignments, see your system administrator or the query’s creator.

ACCESS SUPPORT RESOURCES
Access for developers forum on MSDN
Access help on support.office.com
Access help on answers.microsoft.com
Search for specific Access error codes on Bing
Access forums on UtterAccess
Access wiki on UtterAcess
Access developer and VBA programming help center (FMS)
Access posts on StackOverflow

Hi

I want an update query to «put» a LOTnr (LOT no / batch number) into a table. But it wont work. I get the error message «Operation must use an updatable query. (Error 3073)»

Here is the SQL that doesn’t work: «

UPDATE [Bryggning humle rader] INNER JOIN FörstaInleveransHumleMedLOTnr ON [Bryggning humle rader].[Humle nr] = FörstaInleveransHumleMedLOTnr.[humle nr] SET [Bryggning humle rader].[LOT nr] = [LOTnr]
WHERE ((([Bryggning humle rader].[Torrhumling?])=No) AND (([Bryggning humle rader].[Bryggning nr])=[Formulär]![Bryggning]![Bryggning nr]));

 «

The table «Bryggning humle rader» is update-able if I skip the JOIN with query «FörstaInleveransHumleMedLOTnr «

I tried to see if the table was locked. But its not. This SQL works: «

UPDATE [Bryggning humle rader] SET [Bryggning humle rader].[LOT nr] = «TESTLOTno»
WHERE ((([Bryggning humle rader].[Torrhumling?])=No) AND (([Bryggning humle rader].[Bryggning nr])=[Formulär]![Bryggning]![Bryggning nr]));

The Query FörstaInleveransHumleMedLOTnr SQL is like this:

SELECT [Inleverans insatsvaror rader Humle].[humle nr], First([Inleverans insatsvaror rader Humle].[LOT nr]) AS LOTnr
FROM [Inleverans insatsvaror rader Humle]
WHERE ((([Inleverans insatsvaror rader Humle].[LOT nr]) Is Not Null) AND (([Inleverans insatsvaror rader Humle].slut)=No))
GROUP BY [Inleverans insatsvaror rader Humle].[humle nr];

What am I doing wrong?


Best // Peter Forss Stockholm and Sigtuna GMT +1.00

Icon Ex Error Number: Error 3073
Error Name: Microsoft Access Error 3073
Error Description: Operation must use an updateable query.
Developer: Microsoft Corporation
Software: Microsoft Access
Applies to: Windows XP, Vista, 7, 8, 10, 11

Microsoft Access Error 3073 Summary

Microsoft Access Error 3073 is also considered a runtime error (bug). When it comes to Microsoft Access, software engineers use an arsenal of tools to try to weed out these bugs as good as possible. Sadly, some critical issues such as error 3073 can often be overlooked.

Microsoft Access users can face an error message after execution the program such as «Operation must use an updateable query.». Once bug has been reported, Microsoft Corporation will react and quickly investigate the error 3073 issues. Microsoft Corporation can correct the issues that were discovered, then upload a revised source code file, letting users update their version. So, in these cases, the developer will then release a Microsoft Access program update to fix the error message displayed (and other reported problems).

Why Does Runtime Error 3073 Happen?

A failure during the execution of Microsoft Access is generally when you will encounter Microsoft Access Error 3073 as a runtime error. We can identify the origin of error 3073 runtime errors as follows:

Error 3073 Crash — This is a typical «Microsoft Access Error 3073» error that leads to total program termination. If Microsoft Access can’t handle the given input, or it isn’t able to produce the required output, this typically happens.

Microsoft Access Error 3073 Memory Leak — Error 3073 memory leak results in Microsoft Access increasing in size and horsepower utilized, causing poor systems efficiency. Possible provocations include lack of memory de-allocation and having reference to bad code such as infinite loops.

Error 3073 Logic Error — Logic error happens when the PC produces the wrong output, even when the user enters the right input. The culprit in this case is usually a flaw in Microsoft Corporation source code that handles the input incorrectly.

Microsoft Corporation problems with Microsoft Access Error 3073 most often stem from a corrupt or missing Microsoft Access file. Although annoying, these issues can usually be easily remedied through replacing the problem Microsoft Corporation file. Also, maintaining a clean and optimized Windows registry can help in preventing invalid Microsoft Corporation file path references, so we highly recommend running a registry scan on a regular basis.

Common Microsoft Access Error 3073 Issues

Partial List of Microsoft Access Error 3073 Microsoft Access Errors:

  • «Microsoft Access Error 3073 Program Error.»
  • «Microsoft Access Error 3073 not a Win32 program.»
  • «Microsoft Access Error 3073 needs to close.»
  • «Sorry, we can’t find Microsoft Access Error 3073.»
  • «Microsoft Access Error 3073 can’t be found.»
  • «Problem starting application: Microsoft Access Error 3073.»
  • «Can’t run Microsoft Access Error 3073.»
  • «Microsoft Access Error 3073 failure.»
  • «Faulting Application Path: Microsoft Access Error 3073.»

Microsoft Access Error 3073 EXE errors happen during Microsoft Access installation, while running Microsoft Access Error 3073-related applications (Microsoft Access), during startup or shutdown, or during installation of Windows OS. Notating when Microsoft Access Error 3073 errors occur is paramount in finding the cause of the Microsoft Access problems and reporting them to Microsoft Corporation for help.

Origins of Microsoft Access Error 3073 Troubles

Microsoft Access Error 3073 problems can be attributed to corrupt or missing files, invalid registry entries associated with Microsoft Access Error 3073, or a virus / malware infection.

More precisely, Microsoft Access Error 3073 errors created from:

  • Microsoft Access Error 3073 registry keys invalid / corrupted.
  • Malware has infected Microsoft Access Error 3073, creating corruption.
  • A different program (not related with Microsoft Access) deleted Microsoft Access Error 3073 maliciously or by mistake.
  • A different application in conflict with Microsoft Access Error 3073, or other shared references.
  • Microsoft Access / Microsoft Access Error 3073 corrupt from incomplete download or install.

Product by Solvusoft

Download Now
WinThruster 2022 — Scan your PC for computer errors.

Compatible with Windows 11, 10, 8, 7, Vista, XP and 2000

Optional Offer for WinThruster by Solvusoft | EULA | Privacy Policy | Terms | Uninstall

  • Remove From My Forums
  • Question

  • Hi I have a problem with inserting new data for a newly connected database. What i do is i have a current connection open and running. When the user picks another database source from an OpenFileDialog, I create a temporary variable to test the database connection (from the openfiledialog) and if it can connect then i close the previous connected database and connect to the new database. I close the previous database and set the new database into one and the same variable.

    The problem is when i connect to the new database, and am going to insert some new values to a certain table. It shows the error something like:

    error 3073. An updatable query is necessary.

    I have checked the data source of the database and it contains the path where the new connection is. The sql query is also valid because i have checked it in the ms access query builder. The permission is also valid since it is in write permission.

    Hope anyone has an idea for my problem. Thanks in advance!

  • #1

Hi ..

I created a db in access in which the users login and enter few information in subform which gets stored into a table. Everything was working fine. I just splitted my db into front end and back end . I used my front end to work the same.. but when i click the save button I got an 3073 error that operation must use an updateable query. The query is given below ,

CurrentDb.Execute «INSERT INTO RecordTable([User],[Barcode],[ToolCareJob],[Worked On Activity],[Start Time],[End Time],[Work Time])» & _
«VALUES (‘» & Me.txtUser & » ‘ ,'» & Me.txtbarcode & «‘,'» & Me.cboToolcarejob & «‘,'» & Me.cboWorkedonactivity & «‘,'» & Me.txtStartTime & «‘,'» & Me.txtEndTime & «‘,'» & Me.txtWorkTime & «‘)»

When i googled i found that it maybe due to read/write permissions but while creating both front end and back end I made it to full control… i wonder where did I go wrong

Anyhelp on this issue is really appreciated…

What is the last column in Excel?

Excel columns run from A to Z, AA to AZ, AAA to XFD. The last column is XFD.

  • #2

dont use CurrentDb.Execute.

just run an append query and run it via
docmd.openquery «qaApdQry»

  • #3

creating both front end and back end I made it to full control

You made what full control? Settings in a .mdw file (outdated now)? A network folder? If a folder, does everyone who uses the db have full control on the network folder?
I’m guessing you put the back end in a different folder that isn’t set up correctly:
— if you made no other changes when you split the db
— because you say it was working before
— you have no joins or WHERE clause
— your values seem to be coming from a form (an append query based on a non-updateable query such as a totals query will produce this problem).

  • #4

is RecordTable in the back end

is your vba code in the front end

does

RecordTable has a primary key

При некоторых запросах Microsoft Access я получаю следующее сообщение: Операция должна использовать обновляемый запрос. (Ошибка 3073). Я работаю над этим, используя временные таблицы, но мне интересно, есть ли способ лучше. Все задействованные таблицы имеют первичный ключ. Вот код:

UPDATE CLOG SET CLOG.NEXTDUE = (
    SELECT H1.paidthru 
    FROM CTRHIST as H1
    WHERE H1.ACCT = clog.ACCT AND
    H1.SEQNO = (
        SELECT MAX(SEQNO) 
        FROM CTRHIST 
        WHERE CTRHIST.ACCT = Clog.ACCT AND 
        CTRHIST.AMTPAID > 0 AND
        CTRHIST.DATEPAID < CLOG.UPDATED_ON
    )
)
WHERE CLOG.NEXTDUE IS NULL;

21 ответы

Начиная с Jet 4, все запросы, которые связаны с оператором SQL, суммирующим данные, не будут обновляться. Вы не используете JOIN, но предложение WHERE в точности эквивалентно соединению, и поэтому оптимизатор запросов Jet обрабатывает его так же, как и соединение.

Боюсь, вам не повезло без временной таблицы, хотя, возможно, кто-нибудь с большим знанием Jet SQL, чем я, сможет придумать обходной путь.

Кстати, это могло быть обновлено в Jet 3.5 (Access 97), так как тогда было обновлено множество запросов, которые стали необновляемыми при обновлении до Jet 4.

ответ дан 24 окт ’12, 14:10

У меня была аналогичная проблема, когда следующие запросы не работали;

update tbl_Lot_Valuation_Details as LVD
set LVD.LGAName = (select LGA.LGA_NAME from tbl_Prop_LGA as LGA where LGA.LGA_CODE = LVD.LGCode)
where LVD.LGAName is null;

update tbl_LOT_VALUATION_DETAILS inner join tbl_prop_LGA on tbl_LOT_VALUATION_DETAILS.LGCode = tbl_prop_LGA.LGA_CODE 
set tbl_LOT_VALUATION_DETAILS.LGAName = [tbl_Prop_LGA].[LGA_NAME]
where tbl_LOT_VALUATION_DETAILS.LGAName is null;

Однако использование DLookup решило проблему;

update tbl_Lot_Valuation_Details as LVD
set LVD.LGAName = dlookup("LGA_NAME", "tbl_Prop_LGA", "LGA_CODE="+LVD.LGCode)
where LVD.LGAName is null;

Это решение было первоначально предложено в https://stackoverflow.com/questions/537161/sql-update-woes-in-ms-access-operation-must-use-an-updateable-query

ответ дан 23 мая ’17, 12:05

Проблема определенно связана с использованием (в данном случае) функции max (). Любая функция агрегирования, используемая во время соединения (например, для получения максимального, минимального или среднего значения из объединенной таблицы), вызовет ошибку. То же самое относится и к использованию подзапросов вместо объединений (как в исходном коде).

Это невероятно раздражает (и неоправданно!), Потому что это довольно обычное дело. Мне также пришлось использовать временные таблицы, чтобы обойти это (вытащить агрегированное значение во временную таблицу с помощью оператора вставки, затем присоединиться к этой таблице с вашим обновлением, затем отбросить временную таблицу).

Гленн

ответ дан 07 окт ’08, 22:10

В коде нет ошибки. Но ошибка выдается по следующей причине.

 - Please check weather you have given Read-write permission to MS-Access database file.

 - The Database file where it is stored (say in Folder1) is read-only..? 

Предположим, вы храните базу данных (файл MS-Access) в папке, доступной только для чтения, а при запуске приложения соединение не открывается принудительно. Следовательно, измените разрешение файла / его содержащую папку, как в C:Program files все почти все файлы c диска были установлены только для чтения поэтому изменение этого разрешения решает эту проблему.

ответ дан 06 дек ’13, 09:12

Я знаю, что мой ответ опоздал на 7 лет, но в любом случае вот мое предложение:

Когда Access жалуется на запрос UPDATE, который включает JOIN, просто сохраните запрос с RecordsetType свойство установлено в Dynaset (Inconsistent Updates).

Иногда это позволяет ОБНОВЛЕНИЮ работать.

Создан 25 фев.

Я бы попробовал создать запрос UPDATE в Access. У меня был запрос на ОБНОВЛЕНИЕ, который я написал как

UPDATE TABLE1
SET Field1 = 
(SELECT Table2.Field2
 FROM Table2
 WHERE Table2.UniqueIDColumn = Table1.UniqueIDColumn)

Запрос дал мне ту ошибку, которую вы видите. Это сработало на моем SQL Server, но, как отмечалось ранее, синтаксис Access UPDATE не является стандартным синтаксисом. Однако, когда я перестроил его с помощью мастера запросов Access (он использовал синтаксис JOIN), он работал нормально. Обычно я просто выполнял запрос UPDATE как сквозной для использования синтаксиса, отличного от JET, но одна из таблиц, с которыми я соединялся, была локальной таблицей Access.

ответ дан 19 дек ’11, 19:12

Это происходит, когда нет УНИКАЛЬНОГО ключа MS-ACCESS для обновляемой таблицы (таблиц). (Вне зависимости от схемы SQL).

При создании ссылок MS-Access на таблицы SQL вас просят указать индекс (ключ) во время связывания. Если это сделано неправильно или не выполняется вовсе, запрос к связанной таблице не подлежит обновлению.

При связывании таблиц SQL с Access УБЕДИТЕСЬ, что, когда Access запрашивает у вас индекс (ключ), вы используете именно то, что SQL использует, чтобы избежать проблем (ы), хотя для обновления таблицы Access достаточно указать любой уникальный ключ.

Если вы не были тем человеком, который изначально связал таблицу, удалите связанную таблицу из MS-ACCESS (ссылка удаляется только) и повторно свяжите ее, указав ключ правильно, и все будет работать правильно.

Создан 15 янв.

(Немного поздно на вечеринку …)

В прошлом я решал эту проблему тремя способами:

  1. Ссылка на текстовое поле в открытой форме
  2. DSum
  3. DLookup

Создан 17 сен.

Я была такая же проблема.

Мое решение состоит в том, чтобы сначала создать таблицу из необновляемого запроса, а затем выполнить обновление от таблицы к таблице, и это сработает.

Создан 09 июля ’12, 05:07

Моя не удалась с помощью простого оператора INSERT. Исправлено запуском приложения с ‘Запустить от имени администратора’ доступа.

ответ дан 04 авг.

MS Access — объединение таблиц в запросе на обновление … как сделать его обновляемым

  1. Откройте запрос в режиме конструктора
  2. Кликните один раз на ссылку ч / б таблицы / просмотр
  3. В окне «Свойства» измените значение «Уникальные записи» на «Да».
  4. Сохраните запрос как запрос на обновление и запустите его.

ответ дан 25 апр.

Вы всегда можете написать код на VBA, который обновляется аналогичным образом. У меня тоже была эта проблема, и мой обходной путь заключался в создании запроса на выбор со всеми соединениями, в котором были все данные, которые я искал, чтобы иметь возможность обновлять, делая это набором записей и многократно выполняя запрос обновления как запрос обновления только таблица обновления, поиск только по критериям, которые вы ищете

    Dim updatingItems As Recordset
    Dim clientName As String
    Dim tableID As String
    Set updatingItems = CurrentDb.OpenRecordset("*insert SELECT SQL here*");", dbOpenDynaset)
    Do Until updatingItems .EOF
        clientName = updatingItems .Fields("strName")
        tableID = updatingItems .Fields("ID")
        DoCmd.RunSQL "UPDATE *ONLY TABLE TO UPDATE* SET *TABLE*.strClientName= '" & clientName & "' WHERE (((*TABLE*.ID)=" & tableID & "))"
        updatingItems.MoveNext
    Loop

Я делаю это только с 60 записями в день, а с несколькими тысячами может потребоваться гораздо больше времени, поскольку запрос выполняется от начала до конца несколько раз, вместо того, чтобы просто выбрать всю группу и внести изменения. Вам может понадобиться » в кавычках для tableID, поскольку это строка, но я почти уверен, что это сработало для меня.

Создан 01 ноя.

Я продолжал получать ту же ошибку, пока не сделал соединительное поле уникальным индексом в обеих соединяющих таблицах. Только после этого запрос стал обновляемым.

Филип Стилианос

ответ дан 02 дек ’08, 00:12

По сути, хотя ваш SQL выглядит вполне разумным, Jet никогда не поддерживал стандартный синтаксис SQL для UPDATE. Вместо этого он использует собственный синтаксис (опять же, отличный от проприетарного синтаксиса SQL Server). UPDATE синтаксис), который очень ограниченное. Часто единственные обходные пути «Операция должна использовать обновляемый запрос» очень болезненны. Серьезно подумайте о переходе на более функциональный продукт SQL.

Для получения дополнительной информации о ваших конкретных проблемах и некоторых возможных решениях см. Обновить запрос на основе итоговых сбоев запроса.

Создан 07 сен.

Я продолжал получать ту же ошибку, но все SQL-запросы выполняются в Access очень хорошо.

и когда я внес поправки в разрешение из AccessFile.

проблема исправлена ​​!!

Я даю ‘Сетевое обслуживание‘разрешение на полный доступ к учетной записи, эта учетная запись, если для IIS

ответ дан 16 мая ’12, 09:05

Когда я получил эту ошибку, это могло быть связано с неправильным синтаксисом UPDATE, но после того, как я исправил запрос на обновление, я снова получил ту же ошибку … поэтому я пошел к ODBC Data Source Administrator и обнаружил, что мое соединение было только для чтения. После того, как я установил соединение для чтения-записи и повторно подключился, все заработало нормально.

ответ дан 15 авг.

Сегодня в моем MS-Access 2003 с таблицей ODBC, указывающей на SQL Server 2000 с паролем sa, я получил ту же ошибку.
Я определил первичный ключ в таблице в базе данных SQL Server, и проблема исчезла.

Создан 07 янв.

Здесь возможен другой сценарий. Это сообщение об ошибке будет также выдано для файла, который был извлечен из Visual Source Safe, для всех, кто все еще его использует, и которому не было присвоено значение «Возможность записи» ни в параметре «Просмотр», ни в «Извлечь».

Решение состоит в том, чтобы повторно получить файл из Source Safe и применить настройку Writeability.

Создан 17 янв.

Чтобы подробнее ответить на то, что DRUA упомянул в своем ответе …

Я разрабатываю свои базы данных в Access 2007. Мои пользователи используют среду выполнения Access 2007. У них есть разрешения на чтение для папки database_Front (передняя часть) и разрешения на чтение / запись в папку database_Back.

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

Копирование интерфейса в папку с документами решает проблему.

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

ответ дан 05 мая ’14, 18:05

проверьте свою БД (разрешение базы данных) и дайте полное разрешение

Перейдите в папку БД-> щелкните правой кнопкой мыши свойства-> безопасность-> редактировать-> предоставить полный контроль и меню «Пуск» -> запустить-> введите «uac», сделайте это вниз (если он высокий)

ответ дан 21 окт ’14, 11:10

Ответ, данный выше iDevlop, сработал для меня. Обратите внимание, что мне не удалось найти свойство RecordsetType в моем запросе на обновление. Однако мне удалось найти это свойство, изменив свой запрос на запрос выбора, установив это свойство, как указано в iDevlop, а затем изменив свой запрос на запрос на обновление. Это сработало, временная таблица не нужна.

Мне бы хотелось, чтобы это было просто комментарием к тому, что опубликовал iDevlop, чтобы оно вытекало из его решения, но у меня недостаточно высокий балл.

Создан 30 ноя.

Не тот ответ, который вы ищете? Просмотрите другие вопросы с метками

ms-access

or задайте свой вопрос.

Понравилась статья? Поделить с друзьями:
  • Error 30405 occurred
  • Error 304 teso
  • Error 304 ariston котел
  • Error 303 sans
  • Error 303 minecraft