Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Database abstraction layer
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Database levels of abstraction == === Physical level (lowest level) === The lowest level connects to the database and performs the actual operations required by the users. At this level the conceptual instruction has been translated into multiple instructions that the database understands. Executing the instructions in the correct order allows the DAL to perform the conceptual instruction. Implementation of the physical layer may use database-specific APIs or use the underlying language standard database access technology and the database's version SQL. Implementation of data types and operations are the most database-specific at this level. === Conceptual or logical level (middle or next highest level) === The conceptual level consolidates external concepts and instructions into an intermediate data structure that can be devolved into physical instructions. This layer is the most complex as it spans the external and physical levels. Additionally it needs to span all the supported databases and their quirks, APIs, and problems. This level is aware of the differences between the databases and able to construct an execution path of operations in all cases. However the conceptual layer defers to the physical layer for the actual implementation of each individual operation. === External or view level === The external level is exposed to users and developers and supplies a consistent pattern for performing database operations. <ref>{{Cite web|url=http://www.dmst.aueb.gr/dds/etech/db/abstr.htm|title = Levels of Abstraction}}</ref> Database operations are represented only loosely as SQL or even database access at this level. Every database should be treated equally at this level with no apparent difference despite varying physical data types and operations.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)