ALTER TABLE pessoa_clientes ADD COLUMN codigo TEXT;
ALTER TABLE pessoa_fornecedores ADD COLUMN codigo TEXT;
ALTER TABLE pessoa_colaboradores ADD COLUMN codigo TEXT;
ALTER TABLE pessoa_vendedores ADD COLUMN codigo TEXT;
UPDATE pessoa_clientes AS item SET codigo=(SELECT CAST(COUNT(*) AS TEXT) FROM pessoa_clientes AS prior WHERE prior.empresa_id=item.empresa_id AND prior.id<=item.id);
UPDATE pessoa_fornecedores AS item SET codigo=(SELECT CAST(COUNT(*) AS TEXT) FROM pessoa_fornecedores AS prior WHERE prior.empresa_id=item.empresa_id AND prior.id<=item.id);
UPDATE pessoa_colaboradores AS item SET codigo=(SELECT CAST(COUNT(*) AS TEXT) FROM pessoa_colaboradores AS prior WHERE prior.empresa_id=item.empresa_id AND prior.id<=item.id);
UPDATE pessoa_vendedores AS item SET codigo=(SELECT CAST(COUNT(*) AS TEXT) FROM pessoa_vendedores AS prior WHERE prior.empresa_id=item.empresa_id AND prior.id<=item.id);
CREATE UNIQUE INDEX uk_pessoa_clientes_empresa_codigo ON pessoa_clientes(empresa_id,codigo);
CREATE UNIQUE INDEX uk_pessoa_fornecedores_empresa_codigo ON pessoa_fornecedores(empresa_id,codigo);
CREATE UNIQUE INDEX uk_pessoa_colaboradores_empresa_codigo ON pessoa_colaboradores(empresa_id,codigo);
CREATE UNIQUE INDEX uk_pessoa_vendedores_empresa_codigo ON pessoa_vendedores(empresa_id,codigo);
