Datatypes
In PostgreSQL zijn de datatypes iets anders. Het meest interessante verschil om te weten is dat "int auto_increment" nu "serial" is geworden, en "bigint auto_increment" nu "bigserial" is geworden. Ook kun je geen getal meer achter INT of BIGINT zetten. Dus INT(11) is fout. Een integer is namelijk altijd 4 bytes (-2147483648 tot +2147483647), een bigint 8 bytes (-9223372036854775808 tot 9223372036854775807); het aantal karakters is niet interessant.
Floats heten nu real's en double's; die herken je misschien aan de php functies is_real() en is_double(); synoniemen voor is_float().
In bijvoorbeeld phpPgAdmin (de "phpMyAdmin" van PostgreSQL) vind je de volgende types in het dropdown lijstje. Ik weet het, dat is irritant, je ziet liever gewoon "varchar" in plaats van "character varying(n)", en liever "int" dan "integer", maar het is niet anders, wen er maar aan:
Name Aliases Description
bigint int8 signed eight-byte integer
bigserial serial8 autoincrementing eight-byte integer
bit fixed-length bit string
bit varying(n) varbit(n) variable-length bit string
boolean bool logical Boolean (true/false)
box rectangular box in the plane
bytea binary data
character varying(n) varchar(n) variable-length character string
character(n) char(n) fixed-length character string
cidr IPv4 or IPv6 network address
circle circle in the plane
date calendar date (year, month, day)
double precision float8 double precision floating-point number
inet IPv4 or IPv6 host address
integer int, int4 signed four-byte integer
interval(p) time span
line infinite line in the plane (not fully implemented)
lseg line segment in the plane
macaddr MAC address
money currency amount
numeric [ (p, s) ] decimal [ (p, s) ] exact numeric with selectable precision
path open and closed geometric path in the plane
point geometric point in the plane
polygon closed geometric path in the plane
real float4 single precision floating-point number
smallint int2 signed two-byte integer
serial serial4 autoincrementing four-byte integer
text variable-length character string
time [ (p) ] time of day
[ without time zone ]
time [ (p) ] time of day, including time zone
with time zone timetz
timestamp [ (p) ] timestamp date and time
[ without time zone ]
timestamp timestamptz date and time, including time zone
[ (p) ] with
time zone
http://www.postgresql.org/docs/7.4/interactive/datatype.html
Inhoudsopgave
- Wat is het?
- Werken met PHP en PostgreSQL
- Wat zijn de voordelen?
- Datatypes
- Wat zijn de nadelen?
- Transactions
- Row-level locking
- Stored procedures
- Waar op te letten als ik MySQL gewend ben?