Acertar Tombo Patrimonial por SQL

Forum para usuários do Biblivre 5
carlosasolla
Mensagens: 13
Registrado em: 04 Dez 2018, 20:28

Acertar Tombo Patrimonial por SQL

Mensagem por carlosasolla » 15 Nov 2019, 18:32

Boa noite amigos, gostaria de saber se alguém pode me ajudar a criar um script SQL que altere todos os tombos patrimoniais que tiverem espaço retirando estes espaços.

Tenho algum conhecimento de SQL em outro banco de dados, e consegui abrir o banco de dados pelo pgAdmin, mas não sei qual tabela e campo preciso alterar.

Desde já agradeço, e parabenizo pelo excelente trabalho!

wlucas
Administrador
Mensagens: 1990
Registrado em: 30 Abr 2011, 10:38

Re: Acertar Tombo Patrimonial por SQL

Mensagem por wlucas » 19 Nov 2019, 16:06

Boa tarde Carlos.

Desculpe pela demora em responder.

Anexe o backup de sua base nessa mensagem que eu faço e te devolvo a base e o script com a modificação.


Atenciosamente. :ugeek:

carlosasolla
Mensagens: 13
Registrado em: 04 Dez 2018, 20:28

Re: Acertar Tombo Patrimonial por SQL

Mensagem por carlosasolla » 19 Nov 2019, 17:20

Boa tarde Lucas,

Agradeço pela resposta, mas creio que não vai adiantar você acertar a minha base por aí. Trata-se da biblioteca de um centro espírita, e ainda não terminamos de catalogar todos os livros. Além disso toda quarta-feira que a biblioteca é aberta ao público eu preciso lançar as devoluções e os novos empréstimos. De qualquer forma, anexei a base para você poder verificar.

O que ocorreu foi que quando o pessoal que estava ajudando a cadastrar, acabaram cadastrando, conforme imagem em anexo, cerca de 150 livros com o formato "NE - 99999", quando o correto seria "NE.9999" e acho que por ter espaços, dá erro na tela de catalogação bibliográfica - pesquisa completa pelo campo tombo. Na tela do empréstimo não dá erro , mas fica fora de padrão dificultando a pesquisa do exemplar.

Abraço
Anexos
Biblivre Backup 2019-11-19 18h16m41s Full.b5bz
(2.98 MiB) Baixado 9 vezes
Imagem Relatório Tombo Paginas 3 e 4.png

cleydyr
Administrador
Mensagens: 676
Registrado em: 19 Jul 2017, 19:43
Localização: Recife

Re: Acertar Tombo Patrimonial por SQL

Mensagem por cleydyr » 24 Nov 2019, 22:12

Olá, @carlosasolla. Tudo bem?

Como sempre, antes de fazer qualquer modificação diretamente no banco de dados, recomendo realizar um backup da sua biblioteca e guardá-lo em lugar seguro. Idealmente, você deve testar a restauração desse backup em uma outra máquina para garantir que a restauração (em caso de perda de dados), será feita corretamente.

Aviso dado, o seguinte SQL deve realizar essa tarefa.

Código: Selecionar todos

with q as (
	select id, replace(accession_number, 'NE - ', 'NE.') as new_accession_number
	from single.biblio_holdings)
update single.biblio_holdings
set accession_number = q.new_accession_number from q
where accession_number like '%NE - %' and q.id = biblio_holdings;
Isso não vai eliminar os espaços, mas sim substituir o prefixo "NE - " pelo prefixo "NE.", conforme você explicou no seu último comentário.

Talvez seja necessário reiniciar a máquina para que as mudanças tenham efeito.

Espero que ajude.
Github
Medium
biblivre.cloud: sua biblioteca online sempre estável, a partir de qualquer lugar

wlucas
Administrador
Mensagens: 1990
Registrado em: 30 Abr 2011, 10:38

Re: Acertar Tombo Patrimonial por SQL

Mensagem por wlucas » 26 Nov 2019, 15:41

Boa tarde Carlosasolla.

Por favor, pode informar se teve sucesso em executar o script enviado pelo moderador Cleydyr ?

Atenciosamente: :ugeek:

carlosasolla
Mensagens: 13
Registrado em: 04 Dez 2018, 20:28

Re: Acertar Tombo Patrimonial por SQL

Mensagem por carlosasolla » 26 Nov 2019, 16:00

Olá WLucas , boa tarde!

Peço desculpas, mas ainda não deu tempo de eu fazer o teste do script, acho que hoje a noite eu consigo, aí já posto o resultado em seguida.

Muito obrigado, Abraço!

carlosasolla
Mensagens: 13
Registrado em: 04 Dez 2018, 20:28

Re: Acertar Tombo Patrimonial por SQL

Mensagem por carlosasolla » 26 Nov 2019, 19:31

Boa noite a todos!

O script deu certo sim, só tive que acrescentar o id no final:

Código: Selecionar todos

with q as (
	select id, replace(accession_number, 'NE - ', 'NE.') as new_accession_number
	from single.biblio_holdings)
update single.biblio_holdings
set accession_number = q.new_accession_number from q
where accession_number like 'NE - %' and q.id = biblio_holdings.id;
Muito obrigado a todos!

cleydyr
Administrador
Mensagens: 676
Registrado em: 19 Jul 2017, 19:43
Localização: Recife

Re: Acertar Tombo Patrimonial por SQL

Mensagem por cleydyr » 26 Nov 2019, 19:37

Eita! :shock:

Foi um typo meu. :/ Acho que não selecionei tudo quando copiei do meu editor de código ou deletei algo sem querer aqui no fórum. :/

De qualquer forma, que bom que ajudou.

Abraço!
Github
Medium
biblivre.cloud: sua biblioteca online sempre estável, a partir de qualquer lugar

carlosasolla
Mensagens: 13
Registrado em: 04 Dez 2018, 20:28

Re: Acertar Tombo Patrimonial por SQL

Mensagem por carlosasolla » 26 Nov 2019, 19:58

Cleydyr, boa noite,

Agradeço e peço desculpas por te dar trabalho novamente, porém após verificar melhor aqui, vi que no relatório de tombo, o código do tombo fica certo, porém ao editar o exemplar, o tombo continua aparecendo da forma como estava antes.

Apesar disso na pesquisa por tombo e na tela do empréstimo o BibLivre localiza normal pelo tombo. O fato de estar diferente na tela do exemplar pode causar algum problema?

wlucas
Administrador
Mensagens: 1990
Registrado em: 30 Abr 2011, 10:38

Re: Acertar Tombo Patrimonial por SQL

Mensagem por wlucas » 26 Nov 2019, 20:11

Boa noite Carlos.

Depois roda essa query para saber se ficou algum tombo fora do padrao, pois encontrei 7 do total de 165 .

Query returned successfully: 158 rows affected, 75 ms execution time.



select id,accession_number from single.biblio_holdings where accession_number not like 'NE.%'



Atenciosamente. :ugeek:

Responder

Voltar para “Fórum Biblivre 5”