Michael Glaesemann wrote:
For employees you don't have birthdates for, you could use NULL in SQL. However, as relationally one shouldn't use NULL, you would do the following:

CREATE TABLE employees (
    emp_id SERIAL NOT NULL UNIQUE
    , emp_name TEXT NOT NULL
);

CREATE TABLE employees_birthdates (
    emp_id INTEGER NOT NULL REFERENCES employees (emp_id)
    , birthdate DATE NOT NULL
);

In any case, one would never use NULL. Either the domain includes a value for all possible values (including N/A) or you set up the db schema appropriately.

Hm, that can be painful. What if I have ten optional attributes; separate them to ten different tables?


--
dave


---------------------------(end of broadcast)--------------------------- TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]

Reply via email to