1
0
mirror of https://github.com/jbranchaud/til synced 2026-01-03 07:08:01 +00:00

Add Restarting Sequences When Truncating Tables as a postgres til.

This commit is contained in:
jbranchaud
2016-01-04 20:05:09 -06:00
parent 95b800a375
commit 5fdd4f7f3f
2 changed files with 16 additions and 0 deletions

View File

@@ -0,0 +1,15 @@
# Restarting Sequences When Truncating Tables
PostgreSQL's
[`truncate`](http://www.postgresql.org/docs/current/static/sql-truncate.html)
feature is a handy way to clear out all the data from a table. If you use
`truncate` on a table that has a `serial` primary key, you may notice that
subsequent insertions keep counting up from where you left off. This is
because the sequence the table is using hasn't been restarted. Sure, you can
restart it manually or you can tell `truncate` to do it for you. By
appending `restart identity` to the end of a `truncate` statement, Postgres
will make sure to restart any associated sequences at `1`.
```
truncate pokemon, trainers, pokemons_trainers restart identity;
```