NAME

CPAN::SQLite::Populate - create and populate database tables

VERSION

version 0.217

DESCRIPTION

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.

TABLES

The tables used are described below - the data types correspond to mysql tables, with the corresponding adjustments made if the SQLite database is used.

mods

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)
  • 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.

dists

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_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 distribution. If not directly supplied, the description for, eg, Foo::Bar, if present, will be used for the Foo-Bar distribution.

auths

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.

SEE ALSO

CPAN::SQLite::Index