How about using a field of the type BIGSERIAL
:
Table creation:
CREATE TABLE Estoque
(
produto TEXT,
n_serie BIGINT,
etiqueta BIGSERIAL
);
Data entry:
INSERT INTO Estoque ( produto, n_serie ) VALUES ( 'A', 123 );
INSERT INTO Estoque ( produto, n_serie ) VALUES ( 'B', 456 );
INSERT INTO Estoque ( produto, n_serie ) VALUES ( 'C', 789 );
INSERT INTO Estoque ( produto, n_serie ) VALUES ( 'D', 101 );
INSERT INTO Estoque ( produto, n_serie ) VALUES ( 'E', 112 );
INSERT INTO Estoque ( produto, n_serie ) VALUES ( 'F', 131 );
Testing:
SELECT produto, n_serie, etiqueta FROM Estoque;
Exit:
In the case of existing data, I suggest the creation of a SEQUENCE
and the inclusion of a DEFAULT
in the column etiqueta
pointing to its next value nextval()
:
Original Table:
CREATE TABLE Estoque
(
produto TEXT,
n_serie BIGINT,
etiqueta BIGINT
);
Pre-existing data:
INSERT INTO Estoque ( produto, n_serie ) VALUES ( 'A', 123 );
INSERT INTO Estoque ( produto, n_serie ) VALUES ( 'B', 456 );
INSERT INTO Estoque ( produto, n_serie ) VALUES ( 'C', 789 );
INSERT INTO Estoque ( produto, n_serie ) VALUES ( 'D', 101 );
INSERT INTO Estoque ( produto, n_serie ) VALUES ( 'E', 112 );
INSERT INTO Estoque ( produto, n_serie ) VALUES ( 'F', 131 );
Creation of SEQUENCE
:
CREATE SEQUENCE seqEstoque START 1;
Value adjustment DEFAULT
country etiqueta
:
ALTER TABLE Estoque ALTER COLUMN etiqueta SET DEFAULT nextval('seqEstoque');
Updating of pre-existing data (UPDATE
):
UPDATE Estoque SET etiqueta = nextval('seqEstoque');
Testing:
I need to select all columns from the original table to create this temporary table?
– R.Santos
I believe not, just the keys
– Rovann Linhalis
It worked, thank you very much for your help
– R.Santos
for nothing, have
– Rovann Linhalis