Paul Rohrlach
Paul Rohrlach

Reputation: 39

Syntax error on CREATE TABLE with INHERITS

So I'm new to Postgres and am trying to create a table that uses an INHERITS clause.

Can't figure out why I'm getting a syntax error (postgres 9.1):

CREATE TABLE images (
id SERIAL,
description VARCHAR NOT NULL,
filename VARCHAR NOT NULL,
created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
modified TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
deleted TIMESTAMP DEFAULT NULL,

PRIMARY KEY(id)
);

CREATE TABLE posts (
 id SERIAL,
 title VARCHAR(50),
 body_text VARCHAR,
 image_id INTEGER,
 created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
 modified TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
 deleted TIMESTAMP DEFAULT NULL,

 PRIMARY KEY(id),
 FOREIGN KEY(image_id) REFERENCES images(id)
);

CREATE TABLE events (
 date_time DATETIME NOT NULL,
 venue VARCHAR(50) NOT NULL,
 booking_details VARCHAR NOT NULL,

) INHERITS (posts);

Error

psql:2.sql:30: ERROR:  syntax error at or near ")"
LINE 6: ) INHERITS (posts);
         ^

Upvotes: 0

Views: 1374

Answers (1)

Kevin Joymungol
Kevin Joymungol

Reputation: 1814

booking_details VARCHAR NOT NULL,

Remove the comma

Upvotes: 2

Related Questions