Time::Piece::MySQL(3pm)

Time::Piece::MySQL3pm

Adds mysql-specific methods to time::piece

Usage

  use Time::Piece::MySQL;
  my $time = localtime;
  print $time->mysql_datetime;
  print $time->mysql_date;
  print $time->mysql_time;
  my $time = Time::Piece->from_mysql_datetime( $mysql_datetime );
  my $time = Time::Piece->from_mysql_date( $mysql_date );
  my $time = Time::Piece->from_mysql_timestamp( $mysql_timestamp );

Overview

Using this module instead of, or in addition to, "Time::Piece" adds a few MySQL-specific date-time methods to "Time::Piece" objects.

Object methods

mysql_date / mysql_time / mysql_datetime / mysql_timestamp

Returns the date and/or time in a format suitable for use by MySQL.

Constructors

from_mysql_date / from_mysql_datetime / from_mysql_timestamp

Given a date, datetime, or timestamp value as returned from MySQL, these constructors return a new Time::Piece object. If the value is NULL, they will retrun undef.

Caveat

"Time::Piece" itself only works with times in the Unix epoch, this module has the same limitation. However, MySQL itself handles date and datetime columns from '1000-01-01' to '9999-12-31'. Feeding in times outside of the Unix epoch to any of the constructors has unpredictable results.

Also, MySQL doesn't validate dates (because your application should); it only checks that dates are in the right format. So, your database might include dates like 2004-00-00 or 2001-02-31. Passing invalid dates to any of the constructors is a bad idea: on my system the former type (with zeros) returns undef (previous version used to die) while the latter returns a date in the following month.

Releases

10 releases since Debian 4.0 (Etch); the text changed 3 times.

  1. 4.0
  2. 5.0–6.0
  3. 7–10
  4. 11–13

Author

Original author: Dave Rolsky <[email protected]>

Current maintainer: Marty Pauley <[email protected]>

From libtime-piece-mysql-perl 0.06-2.1 in Debian 13 (Trixie). Parsed by carta from the page's man source.