Well, yes, access does have what is called table triggers, and access also has what we call stored procedures (procedural code that can run at the table level - or in fact you can even call such stored procedures from VBA, or macros).
However, just like MySQL, SQL server, Oracle and more? They ALL HAVE their OWN type of code system for these stored procedures. Access is no different.
This feature and ability was introduced in Access 2010. However, this feature, this ability has ZERO to do with the SQL supported CREATE procedure command.
That command was introduced to give "some" compatibility with SQL Server syntax - but it is quite lame, and limited. WHEN you use CREATE PROCEDURE
in Access SQL, it ONLY creates a select command. As such, the select command is JUST THAT - ONLY a select command and is NOT procedural code.
However, as noted, you can write stored procedures in Access, and they run by the data engine, and they run at engine level. To write these routines, you have to use the macro language. This language is NOT VBA, and not T-SQL (SQL Server code), but Access has its OWN syntax and code.
These so called table routines are thus created when working on a table in design mode.
While such code is limited, it is REAL procedural code, does not use SQL syntax in most cases, and such routines can be called from table events.
And these so called "data macros" are not created with SQL data create commands, you are limited to using the built in macro editor for this purpose.
Keep in mind that while Access has this stored procedure code ability, they are not transaction based. But, they can be of GREAT use, since they even function when using OLEDB or ODBC sources to Access.
So, if you write such code, and then say open Access with FoxPro, or even c# in .net? And then you update a row? The procedural table code and triggers WILL run.
You can see these options here:

So, I could for example maintain the total cost of an invoice for each change, or edit, or adding of rows to a sub form.
The macro language editor looks like say this:

So you can loop over data, you have if/then else etc.
It is a very limited language - but they are in fact true real stored procedure code that runs at the table level, and they run 100% independent of VBA or any other code.
And these table stored procedures run:
- when edit data in a form - even forms without code
- when you issue SQL update or modify statements
- when you modify data via VBA + recordset code
- if an external ODBC or OLEDB source such as .net c# or whatever modifies data