File tree Expand file tree Collapse file tree 1 file changed +25
-0
lines changed Expand file tree Collapse file tree 1 file changed +25
-0
lines changed Original file line number Diff line number Diff line change 1+ # DBIPlugin
2+ Database middle layer to manage connections and schemes
3+
4+ This plugin offers a middle layer for Foswiki extensions to ease connecting to
5+ SQL databases and manage schemes of table and index definitions. The idea is to
6+ keep things as lean as possible without imposing any additional structure. <nop >DBIPlugin
7+ will maintain a plugin's database scheme to make sure it is created and updated as required.
8+
9+ A plugin sub-classes Foswiki::DBI::Schema which is then loaded before
10+ connecting to a database. While connecting to the database the schema then is added to the database.
11+
12+ <nop >DBIPlugin supports any database for which a DBD perl driver is available. A plugin may support
13+ multiple databases where the schemes differ in parts. For example the schema for SQLite differs
14+ from the one for <nop >MariaDB, <nop >MySQL or <nop >PostgreSQL. The plugin will then implement:
15+
16+ * Foswiki::DBISchema::SQLite
17+ * Foswiki::DBISchema::MariaDB
18+ * Foswiki::DBISchema::MySQL
19+ * Foswiki::DBISchema::PostgreSQL
20+
21+ The syntax of each of them are custom tailored towards the respective database vendor. Note
22+ however that from there on it is the plugin's responsibility to cope with further differences
23+ among databases beyond just schema definitions.
24+
25+ Have a look at DBIPluginPerlAPI for further information.
You can’t perform that action at this time.
0 commit comments