Caro amigo e leitor.

Quero me apresentar a você e iniciar um contato periódico para tratarmos assuntos relacionados à linguagem SQL e à programação de banco de dados. Trabalho com banco de dados há algum tempo e sei o quanto é importante trocar experiências com outros profissionais. Ninguém é capaz de extrair o máximo de um banco de dados, mas, juntos, podemos realizar mais e de uma maneira cada vez melhor.

Minha experiência maior tem sido desenvolvida junto ao banco de dados Oracle, mas a padronização do comando SQL e pelo fato de os conceitos de programação de um banco de dados serem facilmente aplicados a qualquer outro banco de dados, faz com que possamos tratar destes assuntos quase que universalmente.

SQL

A linguagem SQL (Structured Query Language) é a base para utilização de bancos de dados relacionais. Com a utilização dos comandos básicos (INSERT, DELETE, UPDATE e SELECT) pode-se resolver a maior parte dos problemas relacionados a manutenção e extração de dados no banco de dados. Com o SQL é possível criar as estruturas básicas de armazenamento, como tabelas e índices. Também há comandos específicos da linguagem para o controle e segurança relacionado a um banco de dados. Em princípio, os comandos SQL são divididos em:

  • DDL (Data Definition Language) ou Linguagem de definição de dados
  • DML (Data Manipulation Language) ou Linguagem de manipulação de dados
  • DQL (Data Query Language) ou Linguagem de recuperação de dados
  • DCL (Data Control Language) ou Linguagem de controle de dados

O SQL tem sido aprimorado ao longo do tempo. Duas entidades (ANSI – American National Standards Institute e ISO – International Standards Organization) vêm, desde 1986, publicando padrões de especificação da linguagem SQL.

Vamos discutir como abordar e tirar o máximo de proveito desta linguagem que é extremamente importante para todos os profissionais de banco de dados. Os principais tópicos que serão de interesse envolvem:

  • Fundamentos da linguagem SQL
  • Extensões e particularidades de cada banco de dados
  • Melhoria no desempenho de consultas
  • Utilização de funções analíticas em banco de dados
  • Tendências do uso da linguagem

Naturalmente a idéia é ter uma visão prática, com exemplos e com a abertura de uma discussão entre todos os leitores.

Programação de Banco de Dados

Os comandos da linguagem SQL são muito poderosos, mas normalmente consegue-se melhorar o desempenho das aplicações através da programação do banco de dados. Ao desenvolver módulos que sejam executados diretamente no servidor diminui-se o tráfego de informações na rede, esconde-se boa parte das estruturas das tabelas e agiliza-se o processamento e retorno das mensagens. Internamento o banco de dados possui mecanismos integrados que permitem unir as estruturas tradicionais de programação com os comandos SQL.

O banco de dados possui mecanismos próprios que podem ser utilizados em favor do desenvolvedor. Cada banco de dados possui um conjunto específico de comandos que definem a linguagem de programação do banco de dados. No caso do Oracle, a linguagem é o PL/SQL, o SQL Server possui o Transact-SQL, o DB2 possui sua própria linguagem de programação, o PostGreSQL possui diversas extensões que podem ser utilizadas como linguagem de programação e o MySQL lançou sua mais recente versão com a possibilidade de programar o servidor. Cada banco de dados é único sob este aspecto, mas todos trabalham sobre os mesmos conceitos. É possível criar módulos programáveis, como funções, procedimentos, objetos, pacotes, gatilhos, etc. Em todos os casos, há um engine responsável pela integração e execução dos módulos no servidor de banco de dados.

Desta forma, os tópicos que serão trabalhados serão:

  • Fundamentos de programação de banco de dados
  • Aspectos avançados da programação
  • Desempenho dos módulos
  • Programação aliada à extração de dados gerenciais
  • Tendências em programação de banco de dados

Como se pode notar, os tópicos são quase os mesmos da linguagem SQL. Também teremos artigos que poderão ser implementados, testados e melhorados por todos os leitores.

Conclusões

Gostaria de agradecer à SQL Magazine pelo convite de escrever esta coluna. Espero corresponder à altura e, para isto, conto com o apoio e participação de todos os leitores.

Vamos trabalhar com a base de todos os bancos de dados: linguagem SQL e programação de banco de dados. Todos as participações são bem-vindas!