tecnologia | consultoria | banco de dados

Banco de Dados - Classificando Dados (ORDER BY)

A cláusula ORDER BY é responsável pela transformação da saída da consulta em dados classificados. Esta cláusula é sempre a última cláusula em uma declaração SELECT.

Classificação Ascendente (ASC):
   SELECT * FROM tb_funcionarios ORDER BY nm_funcionario ASC;
SELECT * FROM tb_funcionarios ORDER BY nm_funcionario;
Cláusulas específicas do Oracle:
SELECT * FROM tb_funcionarios ORDER BY nm_funcionario ASC NULLS FIRST;
SELECT * FROM tb_funcionarios ORDER BY nm_funcionario ASC NULLS LAST;

Classificação Decrescente (DESC):
   SELECT * FROM tb_funcionarios ORDER BY nm_funcionario DESC;
Cláusulas específicas do Oracle:
SELECT * FROM tb_funcionarios ORDER BY nm_funcionario DESC NULLS FIRST;
SELECT * FROM tb_funcionarios ORDER BY nm_funcionario DESC NULLS LAST;
Data publicação: 21:20 25/12/2019

Banco de Dados - Restringindo a Seleção de Dados (WHERE)

A cláusula WHERE estende a declaração SELECT ao fornecer o idioma às linhas restringidas retornadas, baseadas em uma ou mais condições.

Exemplos:
SELECT * FROM tb_funcionarios WHERE nm_funcionario = 'LEANDRO';
SELECT * FROM tb_funcionarios WHERE nm_funcionario IN('LEANDRO', 'Leandro');
SELECT * FROM tb_funcionarios WHERE nm_funcionario LIKE 'Leandro%';
SELECT * FROM tb_funcionarios WHERE nm_funcionario IS NULL;

Ponto de Atenção: O banco de dados Oracle é "Sensível a Maiúsculas" (Case Sensitive), portanto ao filtrar uma coluna desconhecida pode ser necessária a utilização de fórmulas para transformar o texto em maiúsculas (este será tema abordado no próximo tópico).
Data publicação: 21:54 01/10/2019

Banco de Dados - Seleção de Dados (SELECT)

A declaração SELECT é um mecanismo flexível para recuperar informações de uma tabela de banco dados. Esta declaração nunca altera o as informações armazenadas no banco de dados.

Exemplos:
SELECT * FROM tb_funcionarios;
SELECT DISTINCT nm_funcionario FROM tb_funcionarios;

Oracle:
SELECT 'Olá mundo!' FROM dual;

Microsoft SQL Server:
SELECT 'Olá mundo!';

Data publicação: 19:29 29/09/2019

Banco de Dados - Tipos de Armazenamento de Dados (Data Types)

Para armazenar os dados em um banco de dados é necessário ter conhecimento prévio sobre o tipo de dados que serão inseridos em cada coluna das tabelas. Abaixo será listado os principais tipos de dados.

Oracle:
Texto:
CHAR
VARCHAR2
Número:
NUMBER
FLOAT
Data:
DATE
INTERVAL

Microsoft SQL Server:
Texto:
CHAR
VARCHAR
Número:
INT
BIGINT
FLOAT
MONEY
Data:
DATETIME
SMALLDATETIME
Data publicação: 19:27 29/09/2019

SQL Server - Importar tabelas utilizando BCP

Nesta postagem irei mostrar como importar tabelas utilizando o utilitário BCP (Bulk Copy Program) do banco de dados Microsoft SQL Server.

Sintaxe do utilitário BCP:
bcp {table|view|"query"}
{out|queryout|in|format}
{data_file|nul}
{[optional_argument]...}

Parâmetros para indicar importação ou exportação:
- out: Indica que o utilitário irá exportar uma tabela ou view para um arquivo.
- queryout: Indica que o comando irá exportar os dados de uma query para um arquivo.
- in: Indica que o utilitário irá importar os dados de um arquivo para uma tabela.

Para exemplificar a exportação, foi utilizado um arquivo batch (importa_tb_alunos.bat) com o código abaixo.
bcp estudos..tb_alunos in "C:\EXPORT\tb_alunos.txt" -T -c

Explicando brevemente o código acima, "estudos..tb_alunos" é o nome da database seguido do nome da tabela para importação, "in" informa que o arquivo será importado na tabela informada anteriormente, "-T" é o parâmetro para Windows Authentication (utiliza o usuário e senha do Windows para acessar o banco de dados), "-c" indica que as colunas serão exportadas como caracteres.

Parâmetros:
-S     => Servidor
-F2 => Primeira linha a importar (neste exemplo, segunda linha)
-L100 => Última linha a importar (neste exemplo, centésima linha)
-U => Usuário do banco de dados
-P => Senha do usuário do banco de dados
-c => Tipo de dados caractere (delimitadores padrões: linha "ENTER" e coluna "TAB")
-w => Tipo de dados unicode (delimitadores padrões: linha "ENTER" e coluna "TAB")
-t"\t" => Delimitador de coluna (neste exemplo, "TAB")
-r"\n" => Delimitador de linha (neste exemplo, "ENTER")
-T => Windows Authentication
-e => Arquivo para armazenamento dos erros de importação
-o => Arquivo para armazenamento do output após a execução do BCP
-f => Format file cujo define a estrutura da tabela

Publicações relacionadas:
- SQL Server - Exportar tabelas utilizando BCP.
Data publicação: 22:13 16/09/2018

SQL Server - Exportar tabelas utilizando BCP

Nesta postagem irei mostrar como exportar tabelas utilizando o utilitário BCP (Bulk Copy Program) do banco de dados Microsoft SQL Server.

Sintaxe do utilitário BCP:
bcp {table|view|"query"}
{out|queryout|in|format}
{data_file|nul}
{[optional_argument]...}

Parâmetros para indicar importação ou exportação:
- out: Indica que o utilitário irá exportar uma tabela ou view para um arquivo.
- queryout: Indica que o comando irá exportar os dados de uma query para um arquivo.
- in: Indica que o utilitário irá importar os dados de um arquivo para uma tabela.

Para exemplificar a exportação, foi utilizado um arquivo batch (exporta_tb_alunos.bat) com o código abaixo.
bcp estudos..tb_alunos out "C:\EXPORT\tb_alunos.txt" -T -c

Explicando brevemente o código acima, "estudos..tb_alunos" é o nome da database seguido do nome da tabela a ser exportada, "out" informa que a tabela será exportada no arquivo informado, "-T" é o parâmetro para Windows Authentication (utiliza o usuário e senha do Windows para acessar o banco de dados), "-c" indica que as colunas serão exportadas como caracteres.

Abaixo será mostrado outra forma de exportar a mesma tabela utilizando query.
bcp "select * from estudos..tb_alunos" queryout "C:\EXPORT\tb_alunos.txt" -T -c

Parâmetros:
-S     => Servidor
-F2 => Primeira linha a importar (neste exemplo, segunda linha)
-L100 => Última linha a importar (neste exemplo, centésima linha)
-U => Usuário do banco de dados
-P => Senha do usuário do banco de dados
-c => Tipo de dados caractere (delimitadores padrões: linha "ENTER" e coluna "TAB")
-w => Tipo de dados unicode (delimitadores padrões: linha "ENTER" e coluna "TAB")
-t"\t" => Delimitador de coluna (neste exemplo, "TAB")
-r"\n" => Delimitador de linha (neste exemplo, "ENTER")
-T => Windows Authentication
-e => Arquivo para armazenamento dos erros de importação
-o => Arquivo para armazenamento do output após a execução do BCP
-f => Format file cujo define a estrutura da tabela

Publicações relacionadas:
- SQL Server - Importar tabelas utilizando BCP.
Data publicação: 22:01 12/07/2018

Oracle - Números Sequenciais com OVER

Números sequenciais em ordem crescente de first_name:

SELECT
ROW_NUMBER() OVER (ORDER BY e.first_name) AS sequencia,
e.employee_id,
e.first_name
FROM hr.employees e
ORDER BY e.first_name;



Números sequenciais para cada agrupamento de department_id em ordem crescente de employee_id:

SELECT
e.department_id,
e.last_name,
e.employee_id,
ROW_NUMBER() OVER (PARTITION BY e.department_id ORDER BY e.employee_id) AS emp_id
FROM hr.employees e
ORDER BY e.department_id,
e.employee_id;



Mostrar registros que estão entre determinadas linhas, no exemplo abaixo, entre as linhas 51 e 100:

SELECT r, last_name
FROM (SELECT last_name, ROW_NUMBER() OVER (ORDER BY last_name) R
FROM hr.employees)
WHERE R BETWEEN 51 and 100;



OBS: a cláusula OVER funciona da mesma forma no Oracle e SQL Server
Data publicação: 00:54 06/01/2015

Utilizando Oracle SQL Developer com o MS SQL Server 2008 R2

Oracle SQL Developer é um software gratuito para acesso a banco de dados Oracle. Com ele é possível conectar a outros bancos de dados utilizando drivers JDBC de terceiros como Microsoft SQL Server, MySQL, ACCESS, e SyBase.

Como o driver JDBC da Microsoft não funciona corretamente com o Oracle SQL Developer é necessário utilizar o JTDS. O mesmo está disponível para download na página da Sourceforge. Faça o download da versão JTDS 1.2.7 Dist, testei outras versões do JTDS e as mesmas não funcionaram.

Descompacte o arquivo jtds-1.2.7-dist.zip e copie o jtds-1.2.7.jar para a pasta SQL Developer/Drivers. Crie a pasta Drivers caso não exista.

Para utilizar a autenticação do Windows é necessário copiar o arquivo jtds-1.2.7-dist\x86\SSO\ntlmauth.dll para a pasta \jdk\jre\bin.

Para habilitar o SQL Server, no Oracle SQL Developer, basta adicionar o driver jtds-1.2.7.jar em Ferramentas > Banco de dados > Drivers JDBC de Terceiros.


Feito os passos anteriores, basta criar um nova conexão SQL Server e configurá-la.


Versões utilizadas:
Oracle SQL Developer: 3.2.20.09
Driver JTDS 1.2.7 Dist
Java SE Development Kit 6.45 (JDK 6U45)
Data publicação: 12:08 18/09/2014

Banco de Dados - Declarações SQL

Nesta publicação, irei listar como os comandos de banco de dados estão divididos / classificados.

1. DML - Data Manipulation Language (Linguagem de Manipulação de Dados)

SELECT
INSERT
UPDATE
DELETE
MERGE

OBS: alguns autores não consideram a instrução SELECT como DML.

2. DDL - Data Definition Language (Linguagem de Definição de Dados)

CREATE
ALTER
DROP
TRUNCATE
RENAME
COMMENT

3. DCL - Data Control Language (Linguagem de Controle de Dados)
Instruções Oracle:
GRANT
REVOKE

4. TCL - Transaction Control Language (Linguagem de Controle de Transações)

COMMIT
ROLLBACK
Instruções Oracle:
SAVEPOINT
Instruções Microsoft SQL Server:
BEGIN TRANSACTION

Ponto de Atenção: No banco de dados Oracle, é necessário executar a cláusula COMMIT ou ROLLBACK após a execução de um comando DML (com exceção do SELECT). Comandos DDL possuem a execução do COMMIT implícito.
Data publicação: 16:02 10/09/2014
Perfil
Olá jovem Padawan, seja bem vindo! Este site foi criado com o intuito de compartilhar um pouco de conhecimento de Tecnologia da Informação e Business Intelligence.

Linkedin  Youtube

"O sorriso é o símbolo do vencedor." (Masaaki Hatsumi)


Leandro Sacramento, Todos os direitos reservados - 2012 - 2020