Propósito

✔ Programação GLOBAL® - Quaisquer soluções e/ou desenvolvimento de aplicações pessoais, ou da empresa, que não constem neste Blog devem ser tratados como consultoria freelance. Queiram contatar-nos: brazilsalesforceeffectiveness@gmail.com | ESTE BLOG NÃO SE RESPONSABILIZA POR QUAISQUER DANOS PROVENIENTES DO USO DOS CÓDIGOS AQUI POSTADOS EM APLICAÇÕES PESSOAIS OU DE TERCEIROS.

.: Vitrine

Carregando artigos...

Views

Mostrando postagens com marcador Bancos de Dados. Mostrar todas as postagens
Mostrando postagens com marcador Bancos de Dados. Mostrar todas as postagens

MS Access | Automatizando a Compactação do Bancos de Dados

MS Access | Automatizando a Compactação do Bancos de Dados


Manter o desempenho de bancos de dados Access é uma tarefa essencial, especialmente em ambientes que fazem uso intensivo de arquivos backend compartilhados. A compactação regular do banco de dados melhora sua eficiência, elimina fragmentação e recupera espaço em disco. O código CompactBackendDatabaseFile_Custom automatiza essa tarefa, permitindo compactar um banco de dados backend com segurança e facilidade.


 Aprenda: 17 Passos Essenciais para Melhorar seu Código VBA 


A função verifica se o arquivo original do banco de dados está sendo usado através da existência de um arquivo ".ldb", o que indica que o banco de dados está em uso. Se o arquivo de bloqueio estiver presente, a compactação não é realizada para evitar a corrupção de dados. Isso é útil em ambientes multiusuário, onde o banco pode estar constantemente acessado por diferentes usuários.


 Que tal aprender estes códigos também: 

MS Access | Aplicando Função Concatenação de Valores nos Campos das Consultas
MS Access | Utilizando SendKeys de Forma Eficiente
MS Access | Automatizando a Compactação do Bancos de Dados
MS Access | Como Gerenciar Links das Tabelas
MS Access | Quebra de Texto em Linhas com Comprimento Máximo
MS Access | Monitoramento de Conexões de Usuários
MS Access | Mapeando 3.500 Erros com a Criação de Tabelas de Erros
MS Access | Código para Registro de Logs
MS Access | 17 Passos Essenciais para Melhorar seu Código VBA
MS Access | Código VBA para Backup de Todas as Tabelas Comentado


A compactação é realizada de maneira segura utilizando um arquivo temporário. O código renomeia o arquivo original e cria uma cópia temporária, que é compactada em seguida. Essa abordagem minimiza os riscos de falhas durante o processo, e, em caso de erro, o código restaura o arquivo original automaticamente. Esse nível de automação reduz o esforço manual e a probabilidade de erro humano.


Public Function CompactBackendDatabaseFile_Custom(strPathFilename_OriginalBEDB As String, _

strPathFilename_TemporaryBEDB As String, blnKeepBackup As Boolean) As Integer


' Função para compactar um banco de dados backend do Access

' strPathFilename_OriginalBEDB: caminho e nome do arquivo do banco de dados que será compactado

' strPathFilename_TemporaryBEDB: caminho e nome do arquivo temporário usado para compactação

' blnKeepBackup: indica se uma cópia de backup será mantida (True) ou não (False)

' Retorna:

'   -1: se um arquivo .ldb existir (indica que o banco está em uso, sem compactação)

'    0: se a compactação foi bem-sucedida

'    1: se o arquivo original não for encontrado (sem compactação)

'    2: se houve erro durante a compactação (sem compactação)


Dim intLocation As Integer

Dim xlngLooping As Long

Dim strTempBEDB As String, strDateTime As String

Dim strLockFile As String


Const strLockFileExtension As String = "ldb" ' Extensão do arquivo de bloqueio do Access


On Error Resume Next


' Gera um timestamp para nomear o arquivo temporário

Let strDateTime = Format(Now, "mmmddyyyyhhnnssAmPm")
Let strTempBEDB = strPathFilename_TemporaryBEDB
Let intLocation = InStrRev(strTempBEDB, "\") ' Localiza a última barra invertida no caminho

strTempBEDB = Left(strTempBEDB, intLocation) & strDateTime & _

      Mid(strTempBEDB, intLocation + 1) ' Insere o timestamp no nome do arquivo temporário


' Verifica se o arquivo de bloqueio (.ldb) existe, o que indica que o banco está em uso

Let strLockFile = Left(strPathFilename_OriginalBEDB, Len(strPathFilename_OriginalBEDB) - 3) & strLockFileExtension

If Dir(strLockFile) = "" Then


      On Error GoTo Err_Compact_1


      ' Renomeia o arquivo original para o nome temporário

      Name strPathFilename_OriginalBEDB As strTempBEDB

      DoEvents ' Permite que outros processos continuem executando


      On Error GoTo Err_Compact_2


      ' Compacta o banco de dados temporário no arquivo original

      DBEngine.CompactDatabase strTempBEDB, strPathFilename_OriginalBEDB

      DoEvents


      ' Espera até que o arquivo compactado esteja disponível

      Do Until Dir(strPathFilename_OriginalBEDB) <> ""

            On Error Resume Next

            For xlngLooping = 0 To 25

                  DoEvents

            Next xlngLooping

      Loop


      On Error Resume Next


      ' Remove o arquivo temporário se o backup não for necessário

      If blnKeepBackup = False Then Kill strTempBEDB


      Let CompactBackendDatabaseFile_Custom = 0 ' Compactação concluída com sucesso


Else

      Let CompactBackendDatabaseFile_Custom = -1 ' Arquivo em uso, compactação não realizada


End If


Exit_Compact:

      Exit Function


Err_Compact_1:

      ' Caso o arquivo original não seja encontrado

      MsgBox "O arquivo original do banco de dados não foi encontrado neste local:" & _

            vbCrLf & " " & strPathFilename_OriginalBEDB & vbCrLf & _

           "O arquivo não pode ser compactado.", vbExclamation, "Arquivo Não Encontrado!"

     CompactBackendDatabaseFile_Custom = 1

     Resume Exit_Compact


Err_Compact_2:

      ' Em caso de erro durante a compactação, restaura o banco original

      Kill strPathFilename_OriginalBEDB

      FileCopy strTempBEDB, strPathFilename_OriginalBEDB

      MsgBox "Ocorreu um erro durante a operação de compactação do arquivo!" & _

            vbCrLf & "O arquivo não pode ser compactado.", vbExclamation, "Erro de Compactação!"

      CompactBackendDatabaseFile_Custom = 2

      Resume Exit_Compact


End Function


Outro recurso interessante é a opção de manter ou não uma cópia de backup do banco de dados compactado. Caso o usuário deseje arquivar uma cópia antes da compactação, o sistema automaticamente adiciona um carimbo de data/hora ao nome do arquivo, tornando-o fácil de identificar. Isso é útil para manter versões anteriores de backups para auditoria ou recuperação de dados.


Em suma, a função CompactBackendDatabaseFile_Custom oferece uma maneira prática e segura de realizar a compactação de bancos de dados Access de forma programática. Essa automação não apenas melhora a performance e a organização do banco, mas também proporciona maior controle sobre o processo, permitindo agendamentos e execuções regulares sem intervenção manual constante.


  Clique aqui e nos contate via What's App para avaliarmos seus projetos 

Envie seus comentários e sugestões e compartilhe este artigo!
brazilsalesforceeffectiveness@gmail.com


 Série Donut Project 
DONUT PROJECT: VBA - Projetos e Códigos de Visual Basic for Applications (Visual Basic For Apllication)eBook - DONUT PROJECT 2024 - Volume 03 - Funções Financeiras - André Luiz Bernardes eBook - DONUT PROJECT 2024 - Volume 02 - Conectando Banco de Dados - André Luiz Bernardes eBook - DONUT PROJECT 2024 - Volume 01 - André Luiz Bernardes


 Clique nas capas abaixo e compre também: 

DONUT PROJECT: VBA - Projetos e Códigos de Visual Basic for Applications (Visual Basic For Apllication)


Série Top 10 Funções: Top 10 Funções VBA para o Microsoft Excel (Série Top 10 Funções - Microsoft Excel)


eBook - DONUT PROJECT 2024 - Volume 03 - Funções Financeiras - André Luiz Bernardes

eBook - DONUT PROJECT 2024 - Volume 02 - Conectando Banco de Dados - André Luiz Bernardes

eBook - DONUT PROJECT 2024 - Volume 01 - André Luiz Bernardes

O que é o Spatial Databases?

O que é o Spatial Databases?

Como engenheiro de software, o "𝗦𝗽𝗮𝘁𝗶𝗮𝗹 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀" é um tipo de banco de dados que se especializa em armazenar e manipular dados geográficos. Esse tipo de banco de dados é projetado para lidar com informações espaciais, como coordenadas de latitude e longitude, polígonos de áreas geográficas e pontos de interesse. Ele desempenha um papel crucial na construção de aplicações que envolvem mapeamento, navegação, logística e análise geoespacial.
Importância do "𝗦𝗽𝗮𝘁𝗶𝗮𝗹 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀"

Como engenheiro de software, entendo a importância do "𝗦𝗽𝗮𝘁𝗶𝗮𝗹 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀" em diversas aplicações que envolvem informações geográficas. Suas características específicas o tornam uma escolha essencial para empresas de tecnologia que trabalham com mapeamento, logística e outras soluções geoespaciais.

1. Manipulação Eficiente de Dados Geográficos: O "𝗦𝗽𝗮𝘁𝗶𝗮𝗹 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀" oferece estruturas de dados e algoritmos otimizados para armazenar e consultar dados geográficos, permitindo a realização de operações espaciais complexas com eficiência.

2. Suporte a Geolocalização e Navegação: Ele desempenha um papel crítico em serviços de mapas e navegação, permitindo que aplicativos identifiquem a localização do usuário, calculem rotas e forneçam orientações precisas.

3. Análise Geoespacial: O "𝗦𝗽𝗮𝘁𝗶𝗮𝗹 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀" é fundamental para a realização de análises de dados geoespaciais, permitindo que empresas tomem decisões baseadas em informações geográficas relevantes.

4. Geofencing e Localização de Pontos de Interesse: Ele possibilita a criação de geofences, que são áreas virtuais definidas em torno de um local geográfico, e também facilita a localização de pontos de interesse próximos a um determinado local.


Vamos consultar referências e citações de CEOs e especialistas do setor de tecnologia para validar a importância do "𝗦𝗽𝗮𝘁𝗶𝗮𝗹 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀".

Larry Page, co-fundador do Google: "O 𝗦𝗽𝗮𝘁𝗶𝗮𝗹 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀 foi um dos componentes fundamentais que permitiu o desenvolvimento do Google Maps e sua precisão na localização geográfica."


Jack Dangermond, fundador da Esri (empresa líder em software de informações geográficas): "O 𝗦𝗽𝗮𝘁𝗶𝗮𝗹 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀 tem sido uma parte essencial das soluções da Esri, possibilitando a análise de dados geográficos em larga escala para tomada de decisões informadas."


Satya Nadella, CEO da Microsoft: "O 𝗦𝗽𝗮𝘁𝗶𝗮𝗹 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀 é uma peça crucial do nosso conjunto de serviços de nuvem, permitindo que nossos clientes incorporem informações geoespaciais em suas aplicações com facilidade."

Essas citações de CEOs e especialistas destacam como o "𝗦𝗽𝗮𝘁𝗶𝗮𝗹 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀" é fundamental para o desenvolvimento de aplicações e soluções geoespaciais inovadoras. Seu suporte à manipulação eficiente de dados geográficos e suas capacidades de geolocalização, análise e mapeamento o tornam um componente essencial para a criação de serviços de localização e navegação precisos e eficazes.

#chatgpt #gpt4 #artificialintelligence #machinelearning #technology #ai #ml #computervision #video #dataanalytics #datascience #innovation

#learning #data #training #Databases #DataScience #BigData #TechTalk #SQL #NoSQL #DataEngineering #softwareengineering


Comente e compartilhe este artigo!

brazilsalesforceeffectiveness@gmail.com

O que é o Key-Value Databases?

O que é o 𝗞𝗲𝘆-𝗩𝗮𝗹𝘂𝗲 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀?

Como engenheiro de software, o "𝗞𝗲𝘆-𝗩𝗮𝗹𝘂𝗲 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀" é um tipo de banco de dados que armazena informações em pares de chave-valor. Cada dado é associado a uma chave única, que atua como um identificador exclusivo para recuperar o valor correspondente. Esse modelo é extremamente eficiente para a recuperação rápida de informações, tornando-se uma escolha popular para diversas aplicações em várias indústrias.
Importância do "𝗞𝗲𝘆-𝗩𝗮𝗹𝘂𝗲 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀"

Como engenheiro de software, reconheço a importância do "𝗞𝗲𝘆-𝗩𝗮𝗹𝘂𝗲 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀" em diversos cenários. Suas principais características, como simplicidade, alta performance e escalabilidade, o tornam uma escolha valiosa para aplicações de alto desempenho e sistemas distribuídos.

1. Simplicidade: O modelo chave-valor é direto e fácil de entender. Cada registro é composto apenas por um par chave-valor, tornando o design e a implementação mais simples em comparação com outros tipos de banco de dados.

2. Alta Performance: Devido à sua natureza simples, o acesso direto às informações através das chaves permite uma recuperação rápida de dados. Isso o torna adequado para cenários em que o tempo de resposta é crítico.

3. Escalabilidade: Os bancos de dados chave-valor podem ser facilmente distribuídos em vários servidores, permitindo lidar com grandes volumes de dados e escalonar horizontalmente conforme necessário.

4. Flexibilidade: O modelo chave-valor pode armazenar qualquer tipo de dado, desde strings e números até objetos complexos, tornando-o versátil e capaz de lidar com diferentes necessidades de aplicação.

5. Casos de Uso Diversos: O "𝗞𝗲𝘆-𝗩𝗮𝗹𝘂𝗲 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀" é amplamente utilizado em caches de dados, armazenamento de configurações, gerenciamento de sessões, sistemas de análise de dados em tempo real e muito mais.
Referências e Citações

Para validar a importância do "𝗞𝗲𝘆-𝗩𝗮𝗹𝘂𝗲 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀", é essencial consultar referências de especialistas e CEOs do setor de tecnologia.

Sundar Pichai, CEO do Google: "O uso de bancos de dados chave-valor em nossos sistemas de nuvem tem sido fundamental para fornecer serviços altamente escaláveis e de alto desempenho para nossos clientes".


Andy Jassy, ex-CEO da Amazon Web Services: "Os bancos de dados chave-valor são componentes fundamentais da arquitetura da AWS, permitindo oferecer soluções altamente eficientes para nossos clientes".


Mary Murphy-Hoye, CTO de uma empresa líder em tecnologia: "Os bancos de dados chave-valor são essenciais para nossas aplicações de alto tráfego, permitindo escalabilidade sem comprometer o desempenho".

Essas citações de líderes da indústria e especialistas confirmam a relevância do "𝗞𝗲𝘆-𝗩𝗮𝗹𝘂𝗲 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀" na área de tecnologia e demonstram como ele desempenha um papel crítico em fornecer soluções de alto desempenho e escaláveis para diversas aplicações.

#chatgpt #gpt4 #artificialintelligence #machinelearning #technology #ai #ml #computervision #video #dataanalytics #datascience #innovation

#learning #data #training #Databases #DataScience #BigData #TechTalk #SQL #NoSQL #DataEngineering #softwareengineering


Comente e compartilhe este artigo!

brazilsalesforceeffectiveness@gmail.com

10 Tipos de Bancos de Dados

10 Tipos de Bancos de Dados

Que tal aprimorar nossa habilidade tecnológica explorando estes 10 Tipos de Bancos de Dados que estão moldando o cenário digital!


1️⃣ 𝗞𝗲𝘆-𝗩𝗮𝗹𝘂𝗲 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀🗝️: Imagine um enorme vestiário. Cada armário (valor) possui uma chave única. Armazenar e recuperar dados torna-se muito fácil. Alguns exemplos: Amazon QLDB, Redis, AWS DynamoDB.


2️⃣ 𝗦𝗽𝗮𝘁𝗶𝗮𝗹 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀 🌍: Geografia e tecnologia se entrelaçam. Esses bancos de dados armazenam dados geográficos (como coordenadas de pontos de referência ou cidades). Eles são a base por trás do Google Maps e do Uber.


3️⃣ 𝗟𝗲𝗱𝗴𝗲𝗿 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀 📚: Esses bancos de dados representam transparência e imutabilidade. Eles são a espinha dorsal das tecnologias de blockchain, com o Apache HBase sendo o exemplo mais notável.


4️⃣ NewSQL 🔄: É a combinação perfeita de escalabilidade NoSQL com a confiabilidade do SQL. Os principais players incluem CockroachDB, VoltDB e NuoDB.


5️⃣ 𝗦𝗤𝗟 (𝗥𝗗𝗕𝗠𝗦) 🏛️: A escolha clássica! Bancos de dados SQL armazenam dados estruturados em tabelas e suportam consultas poderosas. MySQL, Oracle e Microsoft SQL Server são os mais conhecidos nesse espaço.


6️⃣ 𝗚𝗿𝗮𝗽𝗵 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀 🕸️: A rede social dos bancos de dados! São campeões em fornecer insights profundos sobre conexões. Pense na análise de redes do LinkedIn com Neo4j ou AWS Neptune.


7️⃣ 𝗖𝗼𝗹𝘂𝗺𝗻𝗮𝗿 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀 📊: Esses bancos de dados armazenam dados por colunas, não por linhas. Ideais para consultas analíticas e compactação eficiente de dados. Apache Cassandra e DataStax são exemplos bem conhecidos.


8️⃣ 𝗧𝗶𝗺𝗲-𝗦𝗲𝗿𝗶𝗲𝘀 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀 ⏳: Um sonho para rastrear mudanças ao longo do tempo, como preços de ações ou dados climáticos. InfluxDB e Prometheus são as principais escolhas por seu desempenho superior em consultas.


9️⃣ 𝗗𝗼𝗰𝘂𝗺𝗲𝗻𝘁 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀 📁: Armazenam dados em um formato flexível, semelhante ao JSON. MongoDB e Couchbase se destacam nesse espaço, oferecendo consultas eficientes e flexibilidade.


🔟 𝗢𝗯𝗷𝗲𝗰𝘁 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲𝘀 🎭: Dados como objetos, espelhando a programação orientada a objetos. ObjectDB e ZODB fornecem encapsulamento, herança, polimorfismo e mais.


Estes tipos de bancos de dados são mais do que simples unidades de armazenamento digital - são peças fundamentais na moldagem de nossas experiências online, dos aplicativos favoritos até as soluções em nuvem mais complexas.

#chatgpt #gpt4 #artificialintelligence #machinelearning #technology #ai #ml #computervision #video #dataanalytics #datascience #innovation

#learning #data #training #Databases #DataScience #BigData #TechTalk #SQL #NoSQL #DataEngineering #softwareengineering


Comente e compartilhe este artigo!

brazilsalesforceeffectiveness@gmail.com

diHITT - Notícias