Recursão com a Torre de Hanoi em PHP
Recursão é um conceito essencial em programação que se refere a uma função que se chama a si mesma dentro... Leia mais
Desenvolvedor de Software
Nesta semana o Postgres vem me desafiando, e meu pc também, porque por algum motivo o PGADMIN está demorando uma eternidade para rodar o procedimento de restore de backups.
Numa dessas situações do dia-a-dia com o restore do PGADMIN não querendo funcionar o jeito foi rodar um arquivo .sql e que pasme por ter um tamanho maio a ferramenta de sql do PGADMIN não abria o bendito então o jeito foi usar nosso bom e velho python.
Segue o Script:
#pip install psycopg2 - você deve instalar esta biblioteca
import psycopg2
# Função para executar o script SQL
def executar_script_sql(arquivo_sql, conexao):
try:
# Abrir o arquivo .sql
with open(arquivo_sql, 'r') as f:
script_sql = f.read()
# Criar um cursor e executar o script SQL
with conexao.cursor() as cursor:
cursor.execute(script_sql)
conexao.commit()
print("Script executado com sucesso!")
except Exception as e:
print(f"Ocorreu um erro: {e}")
conexao.rollback()
finally:
conexao.close()
# Conectar ao banco de dados PostgreSQL
def conectar_postgres():
try:
conexao = psycopg2.connect(
host="localhost", # Substitua pelo host correto
database="dev_sge_quatro", # Substitua pelo nome correto do banco de dados
user="postgres", # Substitua pelo usuário correto
password="postgres" # Substitua pela senha correta
)
return conexao
except Exception as e:
print(f"Erro ao conectar ao banco de dados: {e}")
return None
if __name__ == "__main__":
conexao = conectar_postgres()
if conexao:
executar_script_sql('dotbsc.sql', conexao)
Outra forma interessante de realizar a leitura de arquivos .sql é através do script abaixo que faz a execução dos scripts diretamente no psql do postgres:
import subprocess
def executar_script_com_psql(arquivo_sql):
try:
# Chama o comando psql e executa o arquivo SQL
comando = [
'psql',
'-h', 'localhost', # Substitua pelo host correto
'-d', 'dev_sge', # Substitua pelo banco de dados correto
'-U', 'postgres', # Substitua pelo usuário correto
'-p', '5432', # Porta correta
'-f', arquivo_sql # Arquivo SQL a ser executado
]
# Executa o comando e solicita a senha do usuário
subprocess.run(comando, check=True)
print("Script executado com sucesso!")
except subprocess.CalledProcessError as e:
print(f"Ocorreu um erro ao executar o script: {e}")
if __name__ == "__main__":
executar_script_com_psql('pilar_lancar_acoes_part1.sql')
Recursão é um conceito essencial em programação que se refere a uma função que se chama a si mesma dentro... Leia mais
No desenvolvimento de aplicações web, especialmente no Laravel, enviar emails é uma tarefa comum. Porém, testar o envio de emails... Leia mais
Go (ou Golang) é uma linguagem de programação eficiente e fácil de usar, conhecida por sua simplicidade, sendo ideal para... Leia mais
Enviar mensagens de email é uma parte essencial de muitas aplicações web, e o Laravel, um popular framework PHP, torna... Leia mais