table of contents
Sympa::DatabaseDescription(3Sympa) | sympa 6.2.70 | Sympa::DatabaseDescription(3Sympa) |
NAME¶
Sympa::DatabaseDescription - Definition of core database structure
DESCRIPTION¶
This module keeps structure of database used by Sympa software.
Functions¶
- full_db_struct ()
- Function. Returns a heshref containing definitions of all tables.
Each item has the name of table as key and definition as value.
Each definition is hashref containing following keys:
"fields" item is hashref which may contain following items.
- struct
- Column data types. Definitions are based on MySQL. Following types are recognized:
- varchar(length)
- Text with length up to length. length must be lower than 2^16 - 2.
- int(1)
- Boolean, 1 or 0.
- int(11)
- Unix time.
- int(cols)
- Integer with columns up to cols, with its value from -2^31 to 2^31 - 1.
- tinyint
- Integer, -2^7 to 2^7 - 1.
- smallint
- Integer, -2^15 to 2^15 - 1.
- bigint
- Integer, -2^63 to 2^63 - 1.
- double
- IEEE floating point number, 8 bytes.
- enum
- Keyword with length up to 20 o.
- text
- Text with length up to 2000 o at minimum. 4000 o or longer is recommended.
Note: On Sympa 6.2.36 or earlier, required size was 500 o.
- longtext
- Text with length up to 2^32 - 4 o.
- datetime
- Timestamp. Deprecated as of Sympa 6.2.25b.3. Use "int(11)" (Unix time) instead.
- mediumblob
- Binary data with length up to 2^24 - 3 o.
- db_struct ()
- This function was OBSOLETED.
- not_null ()
- Function. TBD.
- autoincrement ()
- Function. TBD.
- primary ()
- Function. TBD.
SEE ALSO¶
sympa_database(5), Sympa::DatabaseManager.
HISTORY¶
Sympa::DatabaseDescription was introduced behind the veil on Sympa 6.1. It began to be referred overtly as a part of Sympa Database Manager (SDM) on Sympa 6.2.
2023-01-26 | 6.2.70 |