Access
 sql >> база данни >  >> RDS >> Access

Избягвайте тази често срещана грешка при изпълнение на съхранена процедура в MS Access

Избягвайте тази често срещана грешка при изпълнение на съхранена процедура в MS Access

Обичаме да изпълняваме съхранени процедури от нашия VBA код, но има един проблем, за който трябва да внимавате:Изпълнение на процедура, която засяга данни, които вече са заредени във вашия формуляр. Ако не сте внимателни, ще получите следното съобщение:

За щастие, това е лесно решение, ето някои предложения:

  • Затворете формуляра и след това изпълнете съхранената процедура. Това предполага, че може да не желаете да преглеждате променените данни в същия формуляр.
  • Задайте източника на запис на формуляри на нищо, след което го върнете към оригиналния източник на данни (вижте кода по-долу).

Затворете формуляра и след това стартирайте съхранената процедура

Ето малко псевдокод, за да започнете:

Private Sub RunSomeProcedure()Dim lngOrderID as Long' Ако приемем, че трябва да предадете информация от вашия формуляр към съхранената процедура, например OrderIDlngOrderID =Me.OrderID 'Ако не съхранявате информацията, тя няма да бъде налична след затваряне на formDoCmd.Close acForm, Me.Name 'Това затваря formExecuteMyCommand "uspStoredProcedureName" &lngOrderIDEnd Sub

Не сте запознати с ExecuteMyCommand? Можете да го разгледате тук.

Задайте източника на запис на формуляра на null

Private Sub RunSomeProcedure()Dim lngOrderID като LongDim strRecordSource като String' Ако приемем, че трябва да предадете информация от вашия формуляр към съхранената процедура, например, OrderIDlngOrderID =Me.OrderID 'Ако не съхранявате информацията, тя ще не е наличен след затваряне на formstrRecordSource =Me.RecordSource 'Съхранете източника на записи за по-късно useMe.RecordSource =vbNullStringExecuteMyCommand "uspStoredProcedureName " &lngOrderIDMe.RecordSource =strRecordSource, така че 'Възстановяване на потребителя да види актуализацията> 

Присъединете се към мен на 9 март със специален гост Ebo Quansah!

Елате и научете най-новото за Microsoft Access с Ebo, продуктовия мениджър за групата Access. За подробности, моля, щракнете тук:https://accessusergroups.org/sql-server-with-access/event/sql-server-with-access-whats-new-in-access-a-presentation-by-the-access- продуктов мениджър/


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ПРЕДУПРЕЖДЕНИЕ:Версия на Office 2204 може да счупи приложенията за достъп

  2. [АКТУАЛИЗИРАНО 2] Критично:Актуализацията на Office прекъсва достъпа — Заявката е повредена

  3. Пребройте всички обекти във вашата база данни

  4. Microsoft Access – Основите

  5. 7 добри технически навика, които всички работодатели трябва да приемат