Semantic search
This entry published by the Free Software Foundation.
ADOdb ADOdb is a database abstraction library for PHP. The PHP version currently supports an amazing number of databases, thanks to the wonderful ADOdb community: MySQL, PostgreSQL, Interbase, Firebird, Informix, Oracle, MS SQL, Foxpro, Access, ADO, Sybase, FrontBase, DB2, SAP DB, SQLite, Netezza, LDAP, and generic ODBC, ODBTP. The Sybase, Informix, FrontBase and PostgreSQL, Netezza, LDAP, ODBTP drivers are community contributions. Some reasons why ADOdb is popular include:
- Designed for speed. It is probably the fastest free software database abstraction library available for PHP. See benchmarks.
- Provides extensive portability support such as date and type-handling and portable schema creation. See portable sql tips
- Support many enterprise features such as database backed sessions (with session expiry notification), SQL code generation, pivot tables, SELECT LIMIT emulation for all databases, performance monitoring.
- Easy to learn.
- Extensive QA, every release is unit-tested on Access, MySQL, PostgreSQL, MS SQL, Oracle 9.
- Mature, continuously developed since August 2000. Has a large community of users.
- Powerful Active Record support. See docs.
- Very reasonable licensing terms (BSD). This means that you can incorporate (and even compile) it into your software applications royalty-free without asking the author's permission, provided you include license.txt in your release.
ADOdb Lite A small, fast replacement for ADODB that uses 1/6th of the memory and upto 300% faster while being compatible with ADODB using a subset of the most often used ADODB commands.. Supports Frontbase, MaxDB, MiniSql, MSSQL, MySql, Postgres, SqLite and Sybase.
ADOdb for Python ADOdb is a database abstraction library. ADOdb was originally developed for PHP, and ported to Python. The Python version implements a subset of the PHP version. You might ask why Python needs a database abstraction library when Python provides the official DB API. Unfortunately the DB API does not encapsulate differences in the database implementations. For example, to select a limited number of rows, say 10 rows, you would have to use very different SQL for different databases:
- MS SQL select top 10 from table
- MySQL and PostgreSQL select * from table limit 10
- Oracle select * from (select * from table) where rownum <= 10
- These differences are handled by ADOdb (using SelectLimit), but not by the Python DB API. Other important database differences transparently handled by ADOdb include date-formating, associative arrays (records as dictionaries) and LOB-handling.
Apache CouchDB Apache CouchDB is a distributed, fault-tolerant and schema-free document-oriented database accessible via a RESTful HTTP/JSON API. Among other features, it provides robust, incremental replication with bi-directional conflict detection and resolution, and is queryable and indexable using a table-oriented view engine with JavaScript acting as the default view definition language. CouchDB is written in Erlang, but can be easily accessed from any environment that provides means to make HTTP requests. There are a multitude of third-party client libraries that make this even easier for a variety of programming languages and environments.
Ara 'Ara' is a command-line utility for querying the Debian package database. It has a query syntax allowing you to search for boolean combinations of regular expressions. It includes a simple syntax and line-editing. A graphical interface, xara, is also provided.
AutoCodeGenerator AutoCodeGenerator is a tool which is able to generate other programs that insert, delete, or update database records for a number of different database programs. Programs can be generated in Python, bash, ksh, Java, C, or other languages; the package also generates code for various database servers via a plain text file.
Bond BOND (building object network databases) is a rapid application development tool which allows you to develop GUI front ends to PostgreSQL databases. It uses XML to define widget layout and how to obtain information from databases. This project is designed to simplify the process of developing database applications for GTK.
Bonddb 'bonddb' is an object orientated wrapper for PostgreSQL. It's a fast data abstraction layer C/C++ applications, to allow easy access to class objects. You can use existing PostgreSQL databases without any modification or additional tables needed in the backend. "bonddb' easily modifies rows in database fields without you having to construct sql statements or worry about refreshing existing datasets. It also lets you easily map your tables together in object to object relationships. Method calls aren't supported yet but they are being worked on.
Cardfile Cardfile is a simple flatfile database with a curses interface, that emulates a library's card catalog. It's useful for cataloging your library, downloaded software, or your Pokemon collection.
CrocoPat 'CrocoPat' is a tool for querying and manipulating relations. It is easy to use because of its simple query and manipulation language based on predicate calculus and its simple file format for relations. It is efficient because it internally represents relations as binary decision diagrams, a data structure that is well-known as a compact representation of large relations. CrocoPat is general, because it manipulates not only graphs (i.e. binary relations), but n-ary relations.
CsvCat Read multiple comma separated value files, such as exported from a spreadsheet or a database, and combine the output into a single file. Options are available to limit the columns included and to semi-intelligently skip headers.
CsvUtils Transformation utilities for csv (or csv-like) generated rows. The standard csv module is very useful for parsing tabular data in CSV format. Typically though, one or more transformations need to be applied to the generated rows before being ready to be used; for instance "convert the 3rd column to int, the 5th to float and ignore all the rest". This module provides an easy way to specify such transformations upfront instead of coding them every time by hand. Two classes are currently available, SequenceTransformer and MappingTransformer, that represent each row as a list (like csv.reader) or dict (like csv.DictReader), respectively.
DBIx Simple DBIx::Simple provides a simplified interface to DBI, Perl's powerful database module. It is aimed at rapid development and easy maintenance, but not at SQL abstraction
DBLIB DBLIB is a PHP library to create WWW interfaces to databases. Its main aim is to support creating interfaces for site administrators, but it can be used as well to create public end-user interfaces. It features over 15 widget types (text, numbers, datetime, password, reference to another table, etc.), automatic data conversion and escaping, automatic input checking in all fields, an abstract data layer that supports several SQL databases, LDAP, and text/dbm files. DBLIB is not a low-level database manager like PHPMyAdmin.
Dia2sql-stl 'dia2sql-stl' is yet another dia2sql converter. It uses libxml2 and the STL to quickly parse UML objects from a Dia diagram and then generates corresponding SQL code to create the tables specified in the UML diagram. It takes a filename and outputs to stdout.
ERW ERW (Entities and Relationships on the Web) is an innovative system for handling complex databases using a Web browser. It uses the most recent standards endorsed by the W3C to offer to the user a sophisticated environment, similar to a dedicated client. Moreover, the user interface is generated in a completely automatic way starting from a conceptual description of the database by means of an XML-based description language for entity-relationship schemata. From the same description, you can also automatically obtain diagrams and documentation. ERW can be used for content management, in particular when the data is structured along complex relations.
Emdros Emdros is a text database engine for annotated or analyzed text. Linguistic analyses are the primary target domain, but other fields that deal with analyzed or annotated text may also benefit from Emdros. The package includes a powerful query language for query/create/update/delete operations. The query-operations are particularly powerful, using embedding and consecutiveness of query-language constructs as ways of mapping queries to database matches that have the same structure.
Ferret
'Ferret' is the GNU data modeller. It lets you create data models and implement them in a relational database. You can draw your data model via an entity-relation diagram, generate the tables from it (another graphical diagram), and then generate the SQL that creates such relational tables. Several SQL dialects are supported (for most popular free software database systems) and it is very easy to patch the sources to support more. This package was formerly known as 'GerWin.'
FlameRobin FlameRobin is a tool used to do common database administration tasks against Firebird databases: running SQL queries, browsing and changing the database structure (tables, views, triggers, procedures, indexes, constraints, sequences, etc.), adding new and modifying existing data, doing backup and restore, managing database users, etc.
FlashPash 'flashPash' is a client/server database tool that lets applications to easily retrieve and update information over the internet or an intranet. Thanks to the PHP ADOdb abstraction library, 12+ databases are supported. Whilst it can be used only on a server, it's primary use is with Flash Shockwave clients, using XML to transport data between client and server.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.
The copyright and license notices on this page only apply to the text on this page. Any software described in this text has its own copyright notice and license, which can usually be found in the distribution itself.
