Re: overwrite column data select - Postgres 9.2

From: Jim Nasby <Jim(dot)Nasby(at)BlueTreble(dot)com>
To: "Steve Petrie, P(dot)Eng(dot)" <apetrie(at)aspetrie(dot)net>, Patrick B <patrickbakerbr(at)gmail(dot)com>, pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: overwrite column data select - Postgres 9.2
Date: 2016-09-21 22:02:13
Message-ID: 55b9088f-edf4-1667-1592-8c77cea6c099@BlueTreble.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

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

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Patrick B 2016-09-21 23:11:27 Re: overwrite column data select - Postgres 9.2
Previous Message pinker 2016-09-21 21:18:37 Re: performance problems with bulk inserts/updates on tsrange with gist-based exclude constrains