Re: postgresql vs mysql - Mailing list pgsql-general

From Chris
Subject Re: postgresql vs mysql
Date
Msg-id 45DCFB04.8030503@gmail.com
Whole thread Raw
In response to Re: postgresql vs mysql  ("Erick Papadakis" <erick.papa@gmail.com>)
Responses Re: postgresql vs mysql  (brian <brian@zijn-digital.com>)
Re: postgresql vs mysql  (Tim Tassonis <timtas@cubic.ch>)
Re: postgresql vs mysql  (CaT <cat@zip.com.au>)
List pgsql-general
Erick Papadakis wrote:
> So how should I make a database rule in MySQL to not allow blank
> strings. Basically to REQUIRE a value for that column, whether it is
> NULL or NADA or VOID or whatever you wish to call it. I just want to
> make sure that something, some value, is entered for a column. Would
> appreciate any thoughts or pointers.
>
> Does PostgreSQL suffer from this oddity as well? This distinction
> between an empty string and a NULL? Could you also please give me an
> example of where this would be useful from a business logic
> standpoint? Why should a NULL be different from an empty string,
> what's the big mysterious difference?

It's not an oddity.

An empty string is a KNOWN value. You know exactly what that value is -
it's an empty string.

A NULL is UNKNOWN - it doesn't have a value at all.



In postgres, to stop an empty blank string:

create table a(a text not null check (char_length(a) > 0));

though that allows a single space in..

See http://www.postgresql.org/docs/8.2/interactive/ddl-constraints.html

and

http://www.postgresql.org/docs/8.2/interactive/ddl-alter.html#AEN2302


No idea about how to do this in mysql, search their documentation.

--
Postgresql & php tutorials
http://www.designmagick.com/

pgsql-general by date:

Previous
From: Rich Shepard
Date:
Subject: Re: postgresql vs mysql
Next
From: Michael Fuhr
Date:
Subject: Re: How can you tell if a function is immutable from psql?