Ir para o conteúdo PET Sistemas de Informação Ir para o menu PET Sistemas de Informação Ir para a busca no site PET Sistemas de Informação Ir para o rodapé PET Sistemas de Informação
  • International
  • Acessibilidade
  • Sítios da UFSM
  • Área restrita

Aviso de Conectividade Saber Mais

Início do conteúdo

Introdução a utilização do Google Planilhas como Banco de Dados



No desenvolvimento de projetos, a gestão e o armazenamento de dados são cruciais para a eficiência e a tomada de decisões. Embora existam muitas soluções especializadas para gerenciamento de banco de dados, a maioria delas exige uma hospedagem paga, muitas vezes inacessível para projetos estudantis ou pessoais. Nesse contexto, uma solução viável para armazenar dados de pequenos projetos pode ser o uso do Google Planilhas. Embora frequentemente associado à criação de planilhas, o Google Planilhas também pode servir como uma alternativa funcional para o armazenamento e a manipulação de dados. Este texto explora como utilizar o Google Planilhas como um banco de dados, aproveitando a API do Google Sheets disponível no Google Cloud Platform. 

 

Google Planilhas como Banco de Dados 

O Google Planilhas oferece uma interface intuitiva para a criação e manipulação de planilhas, e sua flexibilidade permite que ele funcione de maneira eficaz como um banco de dados leve. Com a capacidade de organizar dados em linhas e colunas, o Google Planilhas facilita o armazenamento de informações estruturadas, como registros de clientes, inventário de produtos ou dados de pesquisa. Ao utilizá-lo como banco de dados, sua estrutura pode ser associada à de um Sistema de Gerenciamento de Banco de Dados (SGBD) convencional, com as páginas da planilha representando as tabelas e suas colunas equivalentes às colunas de um SGBD, onde cada linha da planilha representa um registro específico da página. 

 

API do Google Planilhas 

Para interagir programaticamente com o Google Planilhas e utilizar suas funcionalidades como um banco de dados, é necessário usar a API do Google Planilhas. A API permite que desenvolvedores acessem e modifiquem planilhas do Google de maneira automatizada. A seguir, descrevemos o processo básico para configurar e usar a API em seu projeto, através da Google Cloud Platform: 

  1. Configuração do Google Cloud Platform (GCP) 
  2. Criar um Projeto:  Acesse o Google Cloud Console, e crie um novo projeto ou use um existente. 
  3. Ativar a API do Google Sheets: No painel do projeto, vá até a seção de APIs e serviços e ative a API do Google Sheets. 
  4. Configurar Credenciais: Gere credenciais apropriadas (chave de API ou OAuth 2.0) para acessar a API. Dependendo do seu uso, você pode precisar configurar o OAuth 2.0 se for acessar dados em nome de um usuário. 
  5. Autenticação e permissões 
  6. Autenticação: Utilize as credenciais geradas para autenticar suas requisições à API. Se estiver usando OAuth 2.0, o processo de autenticação será mais complexo, pois envolverá consentimento do usuário. 
  7. Permissões: Defina permissões para garantir que sua aplicação possa ler e/ou escrever dados nas planilhas conforme necessário. 

 

Integração com a API 

Para exemplificar a integração neste texto, será utilizado o Laravel, um framework da linguagem PHP, porém, a integração da API pode ser feita em diversas outras linguagens e mantém um certo padrão. 

Para integrar o Google Planilhas com uma aplicação Laravel, você pode usar a biblioteca google/apiclient para PHP. Aqui está um exemplo básico de como configurar e usar a API do Google Sheets em Laravel: 

  • Instalação na Biblioteca: Para começar, é necessário instalar a biblioteca google/apiclient via Composer: composer require google/apiclient 
  • Configuração: A seguir, deve-se criar um serviço para interagir com a API. As credenciais devem ser colocadas no arquivo .env e podem ser configuradas no `config/services.php` 

O código dentro do arquivo services.php deve ficar da seguinte maneira: 

return [ 

    'google' => [ 

        'client_id' => env('GOOGLE_CLIENT_ID'), 

        'client_secret' => env('GOOGLE_CLIENT_SECRET'), 

        'redirect' => env('GOOGLE_REDIRECT'), 

    ], 

];

 

Interação com a API 

Para realizar a interação com a planilha, permitindo leitura, inclusão, edição e exclusão de dados, é necessário configurar funções para que possam realizar cada uma das requisições, veja um exemplo de leitura e escrita de dados fazendo a utilização da API em uma aplicação Laravel. 

Leitura de dados: Para ler dados, a aplicação faz requisições à API especificando o ID da planilha e o intervalo de células que devem ser lidas. A resposta retorna os dados e  podem ser processados pela aplicação. Abaixo veja um exemplo de código: 

class GoogleSheetsController extends Controller 

{ 

    public function readSheet() 

    { 

        $client = new Client(); 

        $client->setApplicationName('Google Sheets API PHP Quickstart'); 

        $client->setScopes(Sheets::SPREADSHEETS_READONLY); 

        $client->setAuthConfig(storage_path('credentials.json')); 

        $client->setAccessType('offline'); 

  

        $service = new Sheets($client); 

        $spreadsheetId = 'YOUR_SPREADSHEET_ID'; 

        $range = 'Sheet1!A1:D10'; 

        $response = $service->spreadsheets_values->get($spreadsheetId, $range); 

        $values = $response->getValues(); 

  

        return view('sheets.index', ['values' => $values]); 

    } 

} 

Explicação do Código:  

  • Client: Configura a autenticação e define o escopo de acesso como leitura (Sheets::SPREADSHEETS_READONLY). 
  • AuthConfig: O caminho para o arquivo de credenciais JSON gerado no Google Cloud Console. 
  • Service: Cria uma instância do serviço Google Sheets. 
  • spreadsheets_values->get: Recupera os dados da faixa especificada da planilha. 

Escrita de dados: Para escrever dados, a aplicação envia uma requisição à API com os dados a serem inseridos ou atualizados, especificando a planilha e o intervalo de células. A API atualiza a planilha em tempo real. Veja abaixo um exemplo de código:

class GoogleSheetsController extends Controller 

{ 

    public function updateSheet() 

    { 

        $client = new Client(); 

        $client->setApplicationName('Google Sheets API PHP Quickstart'); 

        $client->setScopes(Sheets::SPREADSHEETS); 

        $client->setAuthConfig(storage_path('credentials.json')); 

        $client->setAccessType('offline'); 

  

        $service = new Sheets($client); 

        $spreadsheetId = 'YOUR_SPREADSHEET_ID'; 

        $range = 'Sheet1!A1'; 

        $values = [ 

            ["A", "B", "C"], 

            ["D", "E", "F"] 

        ]; 

        $body = new Sheets\ValueRange([ 

            'values' => $values 

        ]); 

        $params = [ 

            'valueInputOption' => 'RAW' 

        ]; 

        $result = $service->spreadsheets_values->update( 

            $spreadsheetId, 

            $range, 

            $body, 

            $params 

        ); 

  

        return 'Data updated successfully!'; 

    } 

} 

Explicação do Código: 

  • Client: Configura a autenticação e define o escopo de acesso de leitura e escrita (Sheets::SPREADSHEETS). 
  • Body: Define os dados a serem enviados para a planilha. 
  • spreadsheets_values->update: Atualiza a faixa especificada na planilha com os novos dados. 

 

Considerações e Limitações

Embora o Google Planilhas ofereça uma solução prática para muitos casos, é importante estar ciente de suas limitações. Abaixo estão algumas considerações a serem levadas em conta ao utilizar o Google Planilhas como banco de dados:  

  1. Capacidade e Performance: O Google Planilhas é ideal para projetos pequenos e médios, mas pode não ser a melhor escolha para grandes volumes de dados. Planilhas têm limites de células, e o desempenho pode ser afetado conforme o número de registros cresce. 
  2. Segurança e Controle de Acesso: Enquanto o Google Planilhas oferece controle de acesso por meio de permissões de compartilhamento, a segurança dos dados pode não ser tão robusta quanto a de sistemas de gerenciamento de banco de dados mais avançados. É crucial garantir que as credenciais e os dados sensíveis estejam protegidos adequadamente. 
  3. Funcionalidades Avançadas: Recursos como transações e relacionamentos entre tabelas são limitados no Google Planilhas. Para projetos que exigem funcionalidades mais complexas, pode ser necessário considerar soluções de banco de dados mais sofisticadas. 
  4. Colaboração e Sincronização: Um dos pontos fortes do Google Planilhas é a colaboração em tempo real. No entanto, ao integrar o Google Planilhas com aplicações externas, é importante gerenciar a sincronização e garantir que os dados estejam sempre atualizados e consistentes. 

 

Boas Práticas para Utilização 

Para garantir que o uso do Google Planilhas como banco de dados seja eficaz e eficiente, considere as seguintes boas práticas: 

  1. Estrutura Clara: Mantenha a estrutura da planilha organizada e clara. Use nomes de colunas descritivos e mantenha a consistência na formatação dos dados. 
  2. Validação de Dados: Implemente validações de dados e regras de negócios diretamente na planilha quando possível para garantir a integridade dos dados. 
  3. Backup Regular: Faça backups regulares das planilhas para evitar a perda de dados em caso de erros ou problemas imprevistos. 
  4. Documentação: Documente a estrutura da planilha e qualquer lógica ou regras específicas para que outros desenvolvedores ou colaboradores possam entender e manter o sistema de forma eficaz. 

 

Com isso, pode-se dizer que o Google Planilhas é uma ferramenta poderosa e acessível que pode servir como uma solução de banco de dados para muitos tipos de projetos. Sua integração com a API do Google Sheets oferece uma maneira prática de gerenciar dados, automatizar processos e colaborar com outros usuários. No entanto, é fundamental compreender suas limitações e adotar boas práticas para garantir que a solução atenda às necessidades do seu projeto de forma eficiente e segura. Com essas considerações e boas práticas, é possível aproveitar ao máximo as funcionalidades do Google Planilhas e integrá-lo com outras ferramentas e tecnologias para atender às demandas do seu projeto. 

Autor: Guilherme Rodrigues Garcia

Divulgue este conteúdo:
https://ufsm.br/r-791-3546

Publicações Relacionadas

Publicações Recentes