You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@metamodel.apache.org by Apache Wiki <wi...@apache.org> on 2013/07/19 14:14:50 UTC

[Metamodel Wiki] Update of "DatabaseCompliancy" by KasperSorensen

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Metamodel Wiki" for change notification.

The "DatabaseCompliancy" page has been changed by KasperSorensen:
https://wiki.apache.org/metamodel/DatabaseCompliancy

Comment:
Converted 'Database compliancy' page to wiki format

New page:
= Database compliancy =

It is one of the important goals of MetaModel to be compliant with as many databases and datastores as possible! We ensure a broad compliance by several initiatives:

 * A broad integration test suite.
 * Extensive but fault-tolerant use of the Java DataBase Connectivity (JDBC) specification.
 * Use of uniform SQL-99 compliant queries.

== Relational databases known to be working with MetaModel ==

||'''Database'''||'''Version'''||'''JDBC driver'''||
||MySQL        ||5+      ||[[http://www.mysql.com/products/connector/j/|Connector/J]]      ||
||PostgreSQL   ||8+      ||[[http://jdbc.postgresql.org/|PostgreSQL JDBC driver]]      ||
||Oracle       ||10g      ||[[http://www.oracle.com/technetwork/indexes/downloads/index.html|SQLJ/JDBC]]      ||
||Apache Derby ||10+      ||[[http://db.apache.org/derby/derby_downloads.html#Latest+Official+Release|Derby driver]]      ||
||Firebird SQL ||2.0+      ||[[http://www.firebirdsql.org/index.php?op=files&id=jaybird|Jaybird driver]]      ||
||Hsqldb/HyperSQL ||1.8+      ||[[http://sourceforge.net/project/showfiles.php?group_id=23316|Hsqldb driver]]      ||
||H2              ||1.2+      ||[[http://www.h2database.com/html/download.html|H2 driver]]      ||
||SQLite ||3.6.0+      ||[[http://www.xerial.org/trac/Xerial/wiki/SQLiteJDBC|Xerial driver]]      ||
||Microsoft SQL Server ||2005+      ||[[http://jtds.sourceforge.net/|JTDS driver]]      ||
||Ingres  || || [[http://community.ingres.com/wiki/JDBC_Driver|Ingres JDBC driver]] ||

== Non-relational / NoSQL databases supported by MetaModel ==

 * MongoDB
 * CouchDB

== Business application supported (through system services) by MetaModel ==

 * Salesforce.com
 * SugarCRM

== File data formats supported by MetaModel ==

||'''File format'''||'''File extension'''||'''Version'''||
||Comma separated file||.csv||||
||Microsoft Excel spreadsheet||.xls||Excel '97-2003||
||.||.xlsx||Excel 2007+||
||OpenOffice.org database||.odb||OpenOffice 2.0+||
||XML file (SAX based)||.xml||||
||XML file (DOM based)||.xml||||
||Microsoft Access database||.mdb||Access '97-2003||
||.||.accdb||Access 2007+||
||dBase database||.dbf||||

== Java object datastores (aka POJO datastores) ==

MetaModel also supports creating datastores built on top of plain Java objects. Either by using a collection of Java bean objects (with getters and setters) or by using collections of Maps or arrays. In the case of using collections of arrays, you will need to manually appoint column names to each index in the arrays.

== Composite datastores ==

MetaModel supports an advanced feature called composite datastores. In short it means that it's possible to access and query several datastores as if they where one. This involves transparent client-side joining, filtering, grouping etc. Composite datastores are typically not as performant in terms of querying but provides for a convenient way to combine data that is otherwise inherently separated from each other.