Table creation: Difference between revisions
Content added Content deleted
No edit summary |
|||
Line 12: | Line 12: | ||
CREATE SEQUENCE account_seq start 100; |
CREATE SEQUENCE account_seq start 100; |
||
CREATE TABLE account ( |
CREATE TABLE account ( |
||
account_id int4 PRIMARY KEY DEFAULT nextval('account_seq'), |
account_id int4 PRIMARY KEY DEFAULT nextval('account_seq'), |
||
created date not null default now(), |
created date not null default now(), |
||
active bool not null default 't', |
active bool not null default 't', |
||
username varchar(16) unique not null, |
username varchar(16) unique not null, |
||
balance float default 0, |
balance float default 0, |
||
age int2, |
age int2, |
||
notes text |
notes text |
||
Line 22: | Line 22: | ||
CREATE TABLE account_note ( |
CREATE TABLE account_note ( |
||
account_id int4 not null REFERENCES account, |
account_id int4 not null REFERENCES account, |
||
created timestamp not null default now(), |
created timestamp not null default now(), |
||
note text not null, |
note text not null, |
||
unique(account_id, note) |
unique(account_id, note) |
||
); |
); |
Revision as of 16:56, 24 January 2007
![Task](http://static.miraheze.org/rosettacodewiki/thumb/b/ba/Rcode-button-task-crushed.png/64px-Rcode-button-task-crushed.png)
You are encouraged to solve this task according to the task description, using any language you may know.
In this task, the goal is to create a table to exemplify most commonly used data types and options.
PostgreSQL
Postgres developers, please feel free to add additional data-types you commonly use to this example.
-- This is a comment CREATE SEQUENCE account_seq start 100; CREATE TABLE account ( account_id int4 PRIMARY KEY DEFAULT nextval('account_seq'), created date not null default now(), active bool not null default 't', username varchar(16) unique not null, balance float default 0, age int2, notes text ); CREATE TABLE account_note ( account_id int4 not null REFERENCES account, created timestamp not null default now(), note text not null, unique(account_id, note) );
-- bool: 't', 'f' or NULL -- int2: -32768 to +32767 -- int4: -2147483648 to +2147483647 -- float: decimal -- date: obvious -- timestamp: date time -- char(#): space padded text field with length of # -- varchar(#): variable length text field up to # -- text: not limited