Skip to content

Instantly share code, notes, and snippets.

@jnjcub
Last active July 18, 2023 04:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save jnjcub/8b9e78c6b014e995be9b8e6064e8cc3f to your computer and use it in GitHub Desktop.
Save jnjcub/8b9e78c6b014e995be9b8e6064e8cc3f to your computer and use it in GitHub Desktop.
Postgresql table with auto increment id , created_at, updated_at
CREATE OR REPLACE FUNCTION trigger_set_timestamp()
RETURNS TRIGGER AS $$
BEGIN
NEW.updated_at = NOW();
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
create table users (
id SERIAL PRIMARY KEY NOT NULL,
first_name TEXT NOT NULL,
last_name TEXT NOT NULL,
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
)
CREATE TRIGGER set_timestamp
BEFORE UPDATE ON users
FOR EACH ROW
EXECUTE PROCEDURE trigger_set_timestamp();
INSERT INTO users (first_name,last_name)
VALUES ( 'Jayan' , 'Jacob') RETURNING *
SELECT * FROM users
UPDATE users
SET last_name = 'JACOB'
WHERE id = 1 RETURNING *;
SELECT * FROM users
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment