---
name: "CPAN::SQLite::Populate"
section: "3pm"
platform: "linux"
package: "libcpan-sqlite-perl"
version: "0.220-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/CPAN::SQLite::Populate"
---

# CPAN::SQLite::Populate(3pm)

create and populate database tables

## NAME

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

## VERSION

version 0.220

## 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
