Login   Register  
PHP Classes
elePHPant
Icontem

Metabase: PHP Database abstraction layer RDBMS independent

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us

  Author Author  
Picture of Manuel Lemos
Name: Manuel Lemos <e-mail contact>
Packages: 37 Browse all classes by Manuel Lemos Browse all classes by
Country: Portugal Portugal - PHP jobs in Portugal
Age: 45
All time rank: 1
Week rank: 2 Down1 in Portugal Portugal Equal


  Detailed description   Download Download .zip .tar.gz   Install with Composer Install with Composer  
Package of classes that provide DBMS independent access and management of databases.

Currently it features:

o BSD style license.

o Dual API call forms:
* Direct driver class object calls
* Global function calls

o Set of functions that call the selected DBMS driver objects functions supporting when possible:
* Database connection setup with support for connection strings
* Operation error handling
* Query constant data conversion
* Direct queries
* Prepared queries
* Query result rows random access
* Retrieve a limit range of rows of a SELECT query.
* Nested transactions
* Large object fields (BLOBs - storing files in the database)
* Database object creation (tables, indexes, sequences)
* DBMS driver supported feature query

o DBMS Drivers classes that support the most important databases being used on the Web.

o Driver conformance test suite to verify if the driver classes are working and features are properly implemented.

o A parser class that is able to interpret DBMS independent database schemas file defined in a custom XML format supporting the following types of objects:
* Tables with fields of the types: text, integer, boolean, date, time, timestamp, decimal, float, character large objects (CLOBs) and binary large objects (BLOBs), auto-increment.
* Primary keys
* Indexes
* Auto incremented sequences

o A manager class that is able to:
* Install a new database from a schema description interpreted by the parser class.
* Ability to compare a previously installed schema with a new schema and only install the changes without affecting data stored after the previous installation or update.
* Dump database structure and contents in the same XML format handled by the parser allowing for moving data between databases of different DBMS vendors.
* Reverse engineer schemas of already installed databases

  Classes of Manuel Lemos  >  Metabase  >  Download Download .zip .tar.gz  >  Support forum Support forum (16)  >  Blog Blog  >  RSS 1.0 feed RSS 2.0 feed Latest changes  
Name: Metabase
Base name: metabase
Description: PHP Database abstraction layer RDBMS independent
Version: -
PHP version: 3
License: BSD License
All time users: 30830 users
All time rank: 14
Week users: 2 users
Week rank: 1166 Down
 
  Groups   Screenshots Screenshots   Freshmeat project   Rate classes User ratings   Dependencies  
  Dependents   Trackback   Applications   Related links   Files Files  

  Groups  
Group folder image XML XML parsing and generation View top rated classes
Group folder image Databases Database management, accessing and searching View top rated classes

  Files folder image Screenshots  
Example database schema in XML
File Role Description
Accessible without login Image file example_schema.gif Screen Example database schema in XML


  Freshmeat project  
Metabase
Project record: metabase
Popularity score: 200.92
Vitality score: 11.02

  User ratings  
RatingsUtility Consistency Documentation Examples Tests Videos Overall Rank
All time: Good (88.6%) Good (83.0%) Sufficient (75.9%) Sufficient (74.1%) Sufficient (67.6%) - Sufficient (74.4%) 82
Month: Not yet rated by the users

  Packages needed by this class  
Class Dependency Why it is needed
Generic XML parser class Conditional If it is used the schema management support, this class is used to parse the XML schema definitions

  Packages that need this class  
Class Dependency Why it is needed
Database access class Required Database independent abstraction layer used to access many SQL databases
Forms generation and validation Conditional Used by the custom linked select plug-in class that retrieves groups of options from many SQL databases
Query result table display class Required Database independent abstraction layer used to access many SQL databases

  Trackback links  
Link Description
PHP database abstraction layer This chapter focuses on PHP database abstraction layer and the database abstraction classes...

  Applications that use this class  
Link Description
Metastorage Metastorage is a PHP Object-Relational mapping (ORM) code generator tool. It generates PHP classes of persistent objects that use Metabase API to install the schema and access many types of databases with the same code.
PHP Classes Repository The PHP Classes Repository site uses Metabase to install and access to the database that holds all the information related with classes hosted in the site.
NeoAssist NeoAssist is a suite for providing intelligent help to the users of a site generating automatic answers to questions submitted online. Metabase assured fast deployment of NeoAssist while it allowed to be implemented in a large number of platforms with different types of databases without further effort. This made possible for Vem.Ca, NeoAssist developer company, to sell licenses to a broader market.
AlberT-EasySite Framework for developing full featured Web sites. Metabase was used because of its capability to abstract every database access operation including table creation.
DataMiner Web interface to manipulate data stored in a database. It uses Metabase to achieve database independence, so it will work with many database systems.
I-Know technology I-Know is the name of technology developed to implement knowledge bases. It was used in the site «É na Net» to implement a service that is able to answer questions about the Internet based on extracts of the book «Estar na Internet».
Obliquid Obliquid is a PHP and XML based framework for building groupware Web portals. It provides "Lego bricks" that may be composed to build an Internet application. Metabase was chosen after experiencing database portability problems with others database abstraction layers. Metabase is also used also to install the database schema.
PHP Hitman Database independent Web hit counter and manager.
phpSecurityAdmin phpSecurityAdmin is a package for managing user accounts and access rights. Metabase was used due to its extensive database driver support and its API that is meant to provide portability to the database packages like this.
Wanadoo Wanadoo is an European ISP. Pierre-henri Delaval developed the Informix driver for Metabase when he worked on Wanadoo portal.
Add link image If you know an application of this package, send a message to the author to add a link here.

  Related links  
Link Description
Latest Beta version Beta version of Metabase source unreleased files
Metabase banner Do you want to help promoting Metabase? Use this banner and make it point to this page.
Metabase mailing list Mailing list for the development and support for Metabase users
More drivers If you are looking for other Metabase drivers that are not available here, go to this page to tell which drivers are you looking for.
Zend.com top rated Did you like this PHP package? Rate it at Zend.com PHP application.

  Files folder image Files  
File Role Description
Files folder imagedocumentation (4 files)
Files folder imageeditplus (4 files)
Accessible without login Plain text file autoincrement.schema Data Driver conformance database schema for testing auto-increment fields
Accessible without login Plain text file driver_test.php Test Driver class conformance test script.
Accessible without login Plain text file driver_test.schema Data Driver class conformance test database schema description.
Accessible without login Plain text file driver_test_config.php Conf. Driver class conformance test configuration script.
Accessible without login Plain text file get_database.php Aux. Utility script to reverse engineer installed database schemas to Metabase XML definition
Accessible without login Plain text file LICENSE Lic. BSD style license
Accessible without login Plain text file lob_test.schema Data Database schema to test large object fields.
Plain text file manager_database.php Class Base class for database schema management extensions
Plain text file manager_ibase.php Class Interbase schema management extension class
Plain text file manager_ifx.php Class Informix schema management extension class
Plain text file manager_msql.php Class Mini-SQL schema management extension class
Plain text file manager_mssql.php Class Microsoft SQL server schema management extension class
Plain text file manager_mysql.php Class MySQL schema manager extension class
Plain text file manager_oci.php Class Oracle OCI schema management extension class
Plain text file manager_odbc.php Class ODBC schema management extension class
Plain text file manager_odbc_msaccess.php Class Microsoft Access schema management extension class
Plain text file manager_pgsql.php Class PostgreSQL schema management extension class
Plain text file manager_sqlite.php Class SQLite schema management extension class
Accessible without login Plain text file metabase.xsl Data XML style sheet to render database schemas in Metabase XML format contributed by Stefano Locati
Plain text file metabase_database.php Class DBMS driver base class.
Plain text file metabase_ibase.php Class Driver class for Interbase contributed by Meir kriheli
Plain text file metabase_ifx.php Class Driver class for Informix contributed by Pierre-henri Delaval
Accessible without login Plain text file metabase_interface.php Aux. Database interface function library
Plain text file metabase_lob.php Class Large object fields handler classes
Plain text file metabase_manager.php Class Database manager class.
Plain text file metabase_msql.php Class Driver class for Mini-SQL
Plain text file metabase_mssql.php Class Driver class for Microsoft SQL server
Plain text file metabase_mysql.php Class Driver class for MySQL
Plain text file metabase_oci.php Class Driver class for Oracle using the OCI
Plain text file metabase_odbc.php Class Driver class for ODBC
Plain text file metabase_odbc_msaccess.php Class Microsoft Access driver class via ODBC contributed by Svemir Brkic
Plain text file metabase_parser.php Class Schema definition parser class.
Plain text file metabase_pgsql.php Class Driver class for PostgreSQL
Plain text file metabase_sqlite.php Class SQLite flat file database API driver contributed by Jeroen Derks
Plain text file metabase_template.php Class Template driver class.
Accessible without login Plain text file README.txt Doc. Information about the project
Accessible without login Plain text file setup_test.php Example Test database setup script.
Accessible without login Plain text file test.schema Data Test database schema definition in Metabase XML format

  Files  /  Files folder image documentation  
File Role Description
  Accessible without login HTML file faq.html Doc. Metabase Frequently Asked Questions
  Accessible without login HTML file metabase.html Doc. Metabase manual in HTML format
  Accessible without login HTML file tutorial-pt.html Doc. Portuguese version of Metabase tutorial in HTML format
  Accessible without login HTML file tutorial.html Doc. Metabase tutorial in HTML format

  Files  /  Files folder image editplus  
File Role Description
  Accessible without login Plain text file metabase.acp Data EditPlus template file for editing Metabase schemas Contribution by Aral Balkan.
  Accessible without login Plain text file metabase.ctl Data EditPlus template file for editing Metabase schemas Contribution by Aral Balkan.
  Accessible without login Plain text file metabase.stx Data EditPlus template file for editing Metabase schemas Contribution by Aral Balkan.
  Accessible without login Plain text file template.schema Data EditPlus template file for editing Metabase schemas Contribution by Aral Balkan.

Install with Composer Install with Composer - Download Download all files: metabase.tar.gz metabase.zip
NOTICE: if you are using a download manager program like 'GetRight', please Login before trying to download this archive.