integer

integerは4バイト整数値を格納する数値データ型。

https://www.postgresql.jp/docs/9.4/datatype-numeric.html#DATATYPE-INT
PostgreSQL | 数値データ型

integer_tableを新たに作って試してみる。

[root@localhost bg1]# su - testuser1
[testuser1@localhost ~]$ psql testuser1db
psql (11.7)
"help" でヘルプを表示します。

testuser1db=> CREATE TABLE integer_table(name varchar(32), number integer);
CREATE TABLE
testuser1db=> \dt
                リレーション一覧
 スキーマ |     名前      |    型    |  所有者  
----------+---------------+----------+-----------
 public   | integer_table | テーブル | testuser1
 public   | user_profile  | テーブル | testuser1
(2 行)

testuser1db=> INSERT INTO integer_table VALUES('one', 1);
INSERT 0 1
testuser1db=> SELECT * FROM integer_table;
 name | number
------+--------
 one  |      1
(1 行)

testuser1db=> INSERT INTO integer_table VALUES('min', -2147483648);
INSERT 0 1
testuser1db=> SELECT * FROM integer_table;
 name |   number    
------+-------------
 one  |           1
 min  | -2147483648
(2 行)

testuser1db=> INSERT INTO integer_table VALUES('max', 2147483647);
INSERT 0 1
testuser1db=> SELECT * FROM integer_table;
 name |   number    
------+-------------
 one  |           1
 min  | -2147483648
 max  |  2147483647
(3 行)

testuser1db=> INSERT INTO integer_table VALUES('min', -2147483649);
ERROR:  integerの範囲外です
testuser1db=> INSERT INTO integer_table VALUES('max', 2147483648);
ERROR:  integerの範囲外です
testuser1db=> SELECT * FROM integer_table;
 name |   number    
------+-------------
 one  |           1
 min  | -2147483648
 max  |  2147483647
(3 行)

testuser1db=>

このように上限や下限を超えるとエラーになるが、範囲内ならちゃんとINSERTできる。