---
name: "Time::Piece::MySQL"
section: "3pm"
platform: "linux"
package: "libtime-piece-mysql-perl"
version: "0.06-2.1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Time::Piece::MySQL"
---

# Time::Piece::MySQL(3pm)

Adds MySQL-specific methods to Time::Piece

## NAME

Time::Piece::MySQL - Adds MySQL-specific methods to Time::Piece

## SYNOPSIS

```
  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 );
```

## DESCRIPTION

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.

## AUTHOR

Original author: Dave Rolsky \<autarch@urth.org\>

Current maintainer: Marty Pauley \<marty+perl@kasei.com\>

## COPYRIGHT

(c) 2002 Dave Rolsky

(c) 2004 Marty Pauley

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

## SEE ALSO

Time::Piece
