WikiDB is a MediaWiki extension which can be used to add database functionality to your wiki. Its core principal is to do this whilst still following a wiki-like workflow for creating and managing data. Data is therefore defined in-page via the standard editing process and, just as you can create links to pages that don't exist, you can put data into a table that doesn't exist, and you are able to display and query that data without requiring any formal structure to be defined.
By creating a table definition, however, you get to force fields to a certain data-type, define fields as aliases of each other (e.g. if different articles use a different name to refer to the same field) and easily flag up unexpected fields that may have been added in error. Changing the field definition instantly updates all data output on the wiki, however the original data is left unmodified. This means that schema changes will never result in data being lost or corrupted.
Because WikiDB allows you to define data on any page, the data can be located directly within the article it relates to. It is therefore easy to find, and there is no problem ensuring it stays up-to-date as the article changes. By default, WikiDB hides the raw data at the point that it is defined, on the assumption that you will output it in aggregated form elsewhere. However you also have the option of outputting it in a standard tabular form or to pass the fields as parameters to a template for in-line display (so if your wiki makes extensive use of infoboxes, it will be easy to update it so this data goes into a table as well).
For more information, see the documentation, below.
v4 (r971) released.
r971 and r970 fix some issues with the way field variables were handled in custom <repeat> tags. Thanks to User:Okino for the bug report and detailed test-case which helped diagnose/test the problem. They also fix an issue with typed fields that don't contain any data, which could sometimes throw fatal PHP errors.
--HappyDog 23:03, 21 April 2015 (UTC)
v4 (r937) released.
WikiDB now supports PostgreSQL! It also now runs correctly on MediaWiki 1.23. As ever, see the CHANGELOG for full details.
--HappyDog 21:17, 8 December 2014 (UTC)
v4 (r906) released!
I have just released v4 (r906) of WikiDB. This includes a massive rewrite of the internal code to improve parsing, and to allow you to use the WikiDB features within templates. This massively increases WikiDB's potential, and fixes nearly all reported bugs!
I have also added tentative SQLite support,
and even-more-tentative PostgreSQL support.
To make use of these enhancements, I now recommend a minimum MediaWiki version of 1.16. Older versions will continue to work but most of the new features are unsupported.
For the full list of changes in this release, please see the CHANGELOG.
All feedback (good or bad) is, as ever, greatly appreciated!
-- HappyDog 20:06, 2 November 2014 (UTC)
- Getting Started:
- Using WikiDB:
- Administering WikiDB:
- Tables - Details about the new tables that are required by the extension.
- Files - Listings of all the files required by the extension.