Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations IamaSherpa on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Embedded database

Status
Not open for further replies.

Patten

Technical User
Aug 22, 2002
106
BE
Can someone explain to me what is being meant with the term "embedded database"?
Can someone give some examples of embedded databases?
 
An embedded database is typically contained within a given application. This usually means that once the application is deployed, the database cannot be maintained outside the application it is servicing. This type of database is designed with the application and will usually be accessed only through the application it was designed for. Also, this type of database may not follow any "known/common" rules for databases: the application it was designed for controls it.

Dimandja
 
Embedded database may be a full capacity SQL server too. For example, well-known MySQL may be embedded in your application (see MySQL sites or forums). Another example is SQLite ( Common form is C/C++ library (in source or in binary), but there are some others (e.g. Java). You may use specified API to drive an embedded (in your app) DB engine. You may allow external access (write your DB interface) or use data in your application only.
 
What exactly is meant by "not follow any known/common rules for databases": is it not operating the same way a regular database (Oracle, SQL Server, ...) does?
Is it accessible by for example ODBC? I mean, can you access the embedded database without the application as well?
 
May I comment upon Dimandja's clause? Embedded DBMS has no own external interface. Your application (written in C++, for example) only controls data via embedded DBMS API. Therefore, you may establish arbitrary external view on your data (or hide data in your application).
Classic DBMS mode of life - server (demon) process on dedicated (server) computer. Classic RDBMS interface is SQL language. Embedded DBMS lives in your application.
With embedded database you (and your users) are free (and poor;). You are data interface creator (not Oracle, MS et al).
Example: we have del cmd on Windows. Let it is 'classic' delete file op. In C/C++ library we have remove() function. Let's consider the function an embedded sys cmd.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top