On 9/21/16 1:50 PM, Steve Petrie, P.Eng. wrote:
The reason I ask is -- the maximum length of a valid email address is actually 256 characters (or 254, according comments in the PHP function is_valid_email_address(...) that I found on the Internet at http://code.iamcal.com/ and use myself). In my own PG DDL, I define email addresses like: contact_email_addr varchar(256) NOT NULL,
FWIW, I stay away from varchar limits that are more than a "suggestion". Generally speaking it's just not worth limiting to something like 50, then the business decides they want 60, then 70, then... I still use varchar to ensure the database can't get DOS'd with garbage, but I'll just set something like varchar(100). That said, if there's a defined limit for email address length, might as well use it...
Disclosure: I'm a PG newbie (and a relative SQL newbie, too), and not familiar with the DEFAULT ":: notation in your DDL.
The :: is a cast that was presumably added by Postgres when the default was assigned. It's equivalent to DEFAULT ''. I definitely don't like defaults like that... if you don't know what the email is then it should be NULL. Or to put it another way, having a default set largely defeats the purpose of NOT NULL (IMHO).
-- Jim Nasby, Data Architect, Blue Treble Consulting, Austin TX Experts in Analytics, Data Architecture and PostgreSQL Data in Trouble? Get it in Treble! http://BlueTreble.com 855-TREBLE2 (855-873-2532) mobile: 512-569-9461 -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general