Inscrições abertas para nosso Webinar anual Adianti Framework 2024!
Clique aqui para saber mais
Erro ao executar "permission-update.sql" no Postgre Não consigo executar o "permission-update.sql" no Postgre, dá erro nesta linha. Já executei o "communication.sql", "log.sql" e o "permission.sql" sem erro. Linha: INSERT INTO system_group_program VALUES((select coalesce(max(id),0)+1 from system_group_program b), 1,(select id from system_program where controller='SystemPHPInfoView')); Erro: ERRO: mais de um regist...
LA
Erro ao executar "permission-update.sql" no Postgre  
Não consigo executar o "permission-update.sql" no Postgre, dá erro nesta linha.
Já executei o "communication.sql", "log.sql" e o "permission.sql" sem erro.

Linha:
INSERT INTO system_group_program VALUES((SELECT coalesce(max(id),0)+1 FROM system_group_program b), 1,(SELECT id FROM system_program WHERE controller='SystemPHPInfoView'));


Erro:
ERRO: mais de um registro foi retornado por uma subconsulta utilizada como uma expressão ********** Error ********** ERRO: mais de um registro foi retornado por uma subconsulta utilizada como uma expressão SQL state: 21000


Pacotão Dominando o Adianti Framework 7
O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado! Versão 7.4


Dominando o Adianti 7 Quero me inscrever agora!

Comentários (4)


JC

Saudações Luis,

Sugiro fazer enviar as sql's de forma cadenciada, obedecendo a sequencia do banco, melhor dizendo primeiro as tabelas que não possuam fk., e só depois popular o banco.
NR

O erro diz que o subselect está retornando mais de 1 registro. Provavelmente o controller SystemPHPInfoView está cadastrado mais de uma vez na tabela system_program.
LA

Ola Nataniel, segui a dica do Jorge e deu certo. Obrigado!

No "permission.sql" mover para o início:
CREATE TABLE system_unit (id INTEGER PRIMARY KEY NOT NULL, name varchar(100));


No "permission-update.sql":
INSERTs "system_group_program" na frente dos "system_program" "IF NOT EXISTS" nos CREATE TABLE Comentar: -- ALTER TABLE IF EXISTS system_user add column system_unit_id int REFERENCES system_unit(id); -- ALTER TABLE IF EXISTS system_user add column active char(1);

PL

Você só precisa executar se estiver migrando de um versão anterior.
Se estiver criando um novo projeto, não precisa executar, pois essas tabelas e registros já existem nos scripts.