|
|
| |
CPAN::SQLite::Populate(3) |
User Contributed Perl Documentation |
CPAN::SQLite::Populate(3) |
CPAN::SQLite::Populate - create and populate database tables
This module is responsible for creating the tables (if
"setup" is passed as an option) and then for
inserting, updating, or deleting (as appropriate) the relevant information
from the indices of CPAN::SQLite::Info and the state information from
CPAN::SQLite::State. It does this through the
"insert",
"update", and
"delete" methods associated with each table.
Note that the tables are created with the
"setup" argument passed into the
"new" method when creating the
"CPAN::SQLite::Index" object; existing
tables will be dropped.
The tables used are described below - the data types correspond to mysql tables,
with the corresponding adjustments made if the SQLite database is used.
This table contains module information, and is created as
mod_id INTEGER NOT NULL PRIMARY KEY
mod_name VARCHAR(100) NOT NULL
dist_id INTEGER NOT NULL
mod_abs TEXT
mod_vers VARCHAR(10)
dslip VARCHAR(5)
chapterid INTEGER
- mod_id
This is the primary (unique) key of the table.
- dist_id
This key corresponds to the id of the associated distribution
in the "dists" table.
- mod_name
This is the module's name.
- mod_abs
This is a description, if available, of the module.
- mod_vers
This value, if present, gives the version of the module.
- dslip
This is a 5 character string expressing the dslip
(development, support, language, interface, public license)
information.
- chapterid
This number corresponds to the chapter id of the module, if
present.
This table contains distribution information, and is created as
dist_id INTEGER NOT NULL PRIMARY KEY
dist_name VARCHAR(90) NOT NULL
auth_id INTEGER NOT NULL
dist_file VARCHAR(110) NOT NULL
dist_vers VARCHAR(20)
dist_abs TEXT
dist_dslip VARCHAR(5)
- dist_id
This is the primary (unique) key of the table.
- auth_id
This corresponds to the CPAN author id of the distribution in
the "auths" table.
- dist_name
This corresponds to the distribution name (eg, for
My-Distname-0.22.tar.gz,
"dist_name" will be
"My-Distname").
- dist_file
This corresponds to the CPAN file name.
- dist_vers
This is the version of the CPAN file (eg, for
My-Distname-0.22.tar.gz,
"dist_vers" will be
0.22).
- dist_abs
This is a description of the distribtion. If not directly
supplied, the description for, eg,
"Foo::Bar", if present, will be used
for the "Foo-Bar" distribution.
- dist_dslip
This is a 5 character string expressing the dslip
(development, support, language, interface, public license) information.
Normally this comes from the module name; this value for the
distribution name comes in simple cases where the module name matches
the distribution name by a substitution of
"::" by
"-".
This table contains CPAN author information, and is created as
auth_id INTEGER NOT NULL PRIMARY KEY
cpanid VARCHAR(20) NOT NULL
fullname VARCHAR(40) NOT NULL
email TEXT
- auth_id
This is the primary (unique) key of the table.
- cpanid
This gives the CPAN author id.
- fullname
This is the full name of the author.
- email
This is the supplied email address of the author.
This table contains chapter information associated with distributions. PAUSE
allows one, when registering modules, to associate a chapter id with each
module (see the "mods" table). This
information is used here to associate chapters (and subchapters) with
distributions in the following manner. Suppose a distribution
"Quantum-Theory" contains a module
"Beta::Decay" with chapter id
55, and another module
"Laser" with chapter id
87. The
"Quantum-Theory" distribution will then have
two entries in this table - "chapterid" of
55 and "subchapter" of Beta,
and "chapterid" of 87 and
"subchapter" of Laser.
The table is created as follows.
chap_id INTEGER NOT NULL PRIMARY KEY
chapterid INTEGER
dist_id INTEGER NOT NULL
subchapter TEXT
- chap_id
This is the primary (unique) key of the table.
- chapterid
This number corresponds to the chapter id.
- dist_id
This is the id corresponding to the distribution in the
"dists" table.
- subchapter
This is the subchapter.
Visit the GSP FreeBSD Man Page Interface. Output converted with ManDoc. |