![]() |
![]()
| ![]() |
![]()
NAMECPAN::SQLite::Populate - create and populate database tables DESCRIPTIONThis 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. TABLESThe tables used are described below - the data types correspond to mysql tables, with the corresponding adjustments made if the SQLite database is used. modsThis 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
distsThis 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)
authsThis 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
chapsThis 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
SEE ALSOCPAN::SQLite::Index
|