Mostrando postagens com marcador banco de dados. Mostrar todas as postagens
Mostrando postagens com marcador banco de dados. Mostrar todas as postagens

quinta-feira, 11 de maio de 2023

Ver um chave estrangeira (foreingkey) em uma tabela já criada por sql no MYSQL

 Para ver o create table com todas chaves estrangeiras de uma tabela basta usar a SQL abaixo:

SHOW CREATE TABLE NOME_TABELA


Onde:

NOME_TABELA - É o nome da tabela ser verificada

sábado, 24 de abril de 2021

Como converter JSON Date para java.util.date

LocalDateTime dateTime = LocalDateTime.parse(json.get("campo_date"));

Calendar cal = Calendar.getInstance();
 

cal.set(dateTime.getYear(), dateTime.getMonthValue(), dateTime.getDayOfMonth(), dateTime.getHour(), 

Date data = cal.getTime();

quarta-feira, 27 de janeiro de 2021

Verificar se uma tabela existe no sql lite

 


 

Para verificar se uma tabela existe no sqlLite basta utilizar a query abaixo:


SELECT count(*) FROM sqlite_master WHERE type='table' AND name='nome_tabela'; 

 

Onde

  • nome_tabela - Nome da tabela que você deseja ver se existe.

 

 Caso exista a tabela será retornado o valor 1(um), caso contrário será retornado 0 (zero).

 

Exemplo

SELECT count(*) FROM sqlite_master WHERE type='table' AND name='usuarios';

terça-feira, 8 de janeiro de 2019

Como limitar a quantidade de resultados de um SELECT


Resumo:


SELECT  CAMPOS  FROM   TABELA WHERE   FILTRO LIMIT QUANTIDADE


Há momentos que precisamos limitar a quantidade de linhas que é retornado em uma consulta SQL, para isso utilizamos a palavra chave LIMIT na consulta em questão.


Sintaxe:


SELECT  
  CAMPOS 
 FROM
  TABELA 
WHERE
  FILTRO 
LIMIT QUANTIDADE

Onde:



LIMIT - Palavra chave
QUANTIDADE - Quantidade de linhas a ser retornada


Exemplo:

SELECT nome, rg FROM Pessoas WHERE id>30 LIMIT 10


Na consulta acima será retornado somente os dez primeiros itens de acordo com o filtro.

terça-feira, 16 de maio de 2017

Subtraindo e adicionando hora, minuto, DIAS, MES, ANO A UMA DATA NO MYSQL

Resumo


SELECT * FROM NOME_TABELA WHERE data DATE_SUB(DATA_INICIAL, INTERVAL NUM TIPO_ENTERVALO)

SELECT * FROM NOME_TABELA WHERE data DATE_ADD(DATA_INICIAL, INTERVAL NUM TIPO_ENTERVALO)


Introdução

O principal objetivo deste post é explica de maneira simples e rápida como se adicionar ou remover de uma data no mysql horas,minutos, segundos, dias, meses ou anos.



Adicionando dados a uma data


Para adicionar hora, minutos, segundos, dias, meses ou até mesmo anos basta seguir a seguinte sintaxe:

Sintaxe:

DATE_ADD(DATA_INICIAL INTERVAL NUM_INTERVALO TIPO_INTERVALO)


Onde:

  • DATA_INICIAL - Data da qual será a base para adicionar as informações.
  • NUM_INTERVALO - Número que simboliza o intervalo a ser adicionado a data.
  • TIPO_INTERVALO - Tipo do intervalo a ser adicionado: MINUTE (minutos), HOUR (horas), DAY(dias), MONTH (mêses), YEAR (anos).


Exemplos:

Adicionando um ano a data atual.

select CURRENT_TIMESTAMP as DATA_ATUAL, DATE_ADD(CURRENT_TIMESTAMP, INTERVAL 1 YEAR) AS DATA_MODIFICADA









Adicionando uma hora a data atual.

select CURRENT_TIMESTAMP as DATA_ATUAL, DATE_ADD(CURRENT_TIMESTAMP, INTERVAL 1 HOUR) AS DATA_MODIFICADA


Adicionando quinze minutos a data atual.

select CURRENT_TIMESTAMP as DATA_ATUAL, DATE_ADD(CURRENT_TIMESTAMP, INTERVAL 15 MINUTE) AS DATA_MODIFICADA


Adicionando dois meses a data atual.

select CURRENT_TIMESTAMP as DATA_ATUAL, DATE_ADD(CURRENT_TIMESTAMP, INTERVAL MONTH) AS DATA_MODIFICADA


Removendo dados de uma data


Para remover hora, minutos, segundos, dias, meses ou até mesmo anos basta seguir a seguinte sintaxe:

Sintaxe:

DATE_SUB(DATA_INICIAL INTERVAL NUM_INTERVALO TIPO_INTERVALO)


Onde:

  • DATA_INICIAL - Data da qual será a base para remover as informações.
  • NUM_INTERVALO - Número que simboliza o intervalo a ser removido a data.
  • TIPO_INTERVALO - Tipo do intervalo a ser removido: MINUTE (minutos), HOUR (horas), DAY(dias), MONTH (mêses), YEAR (anos).


Exemplos:

Removendo um ano a data atual.

select CURRENT_TIMESTAMP as DATA_ATUAL, DATE_SUB(CURRENT_TIMESTAMP, INTERVAL 1 YEAR) AS DATA_MODIFICADA










Removendo uma hora a data atual.

select CURRENT_TIMESTAMP as DATA_ATUAL, DATE_SUB(CURRENT_TIMESTAMP, INTERVAL 1 HOUR) AS DATA_MODIFICADA


Removendo quinze minutos a data atual.

select CURRENT_TIMESTAMP as DATA_ATUAL, DATE_SUB(CURRENT_TIMESTAMP, INTERVAL 15 MINUTE) AS DATA_MODIFICADA


Removendo dois meses a data atual.

select CURRENT_TIMESTAMP as DATA_ATUAL, DATE_SUB(CURRENT_TIMESTAMP, INTERVAL MONTH) AS DATA_MODIFICADA



segunda-feira, 23 de março de 2015

Salvando resultado de execução de query no pgAdmin

O objetivo deste post é explicar em pequenos passo como se faz para salvar o resultado de uma query executado no pgAdmin.

Caso você tenha tentando copiar o conteúdo de uma execução de query no pgAdmin e recebeu uma mensagem parecida abaixo quando se colou o conteúdo no seu editor, neste post você terá a solução.

Figura 1: Coluna a tentar ser copiada. 

Abaixo é possível ver o que é exibido quando tentamos colar no bloco de notas o conteúdo do data output.
Figura 2: Resultado do ctrl+v no bloco de notas
 Para solucionar esse problema basta clicar no ícone "execute query, write result in file" localizado na parte superior da tela, vide a imagem abaixo:

Figura 3: ícone de "execute query, write result in file"

Após clicar na mesma basta escolher o arquivo destino que terá a função de guardar o resultado do data output e clicar em OK para que a execução da querie seja feita.

Figura 4: Caixa com informações para escrita da saída da execução da query.

Agora basta abri o arquivo destino para ver o resultado da query executado.

Figura 5: Arquivo que contém o conteúdo da query executada no pgAdmin.


Abaixo é possível ver o logo da versão do postAdmin testado.



sexta-feira, 9 de agosto de 2013

Como criar e utilizar uma VIEW (visão)

Introdução

O principal desde post é explicar de maneira simples como se criar e utilizada uma View(Visão).
Quando se cria uma View é criada uma espécie de tabela virtual ou consulta armazenada pela qual é possível obter somente os dados existentes no Select contido no corpo da View.

Vantagens


Dentre as vantagens existentes na utilização de Views pode citar:

- Evitar retrabalho - Ou seja não é necessário executar sempre um mesmo bloco SQL para obter um determinado resultado.


- Associar varias tabelas em uma única (VIEW) - É possível juntar varias tabelas em uma única view evitando desta forma precisar editar joins.

- Restrição de dados - É possível criar uma VIEW para uma tabela e exibir só um determinado grupo de colunas.

Sintaxe


Abaixo é possível ver a sintaxe básica para criar uma view.

Sintaxe:

CREATE VIEW NOME_VIEW (CAMPO_V1,CAMPO_V2,...,CAMPO_VN)
AS
SELECT CAMPO_1,CAMPO_2,...,CAMPO_N FROM TABELA_USADA

Onde:

- NOME_VIEW - Nome que será dada a view que será criada.

- CAMPO_V1 - Nome da coluna que será criada na VIEW que é referenciada no na TABELA_USADA ao CAMPO_1.

- CAMPO_1 - Nome da coluna da TABELA_USADA que será visto na VIEW

-TABELA_USADA - Tabela ou tabelas que farão alimentação da view.

 

Utilização


O processo de utilização da view é bem simples basta seguir a sintaxe abaixo:


SELECT * FROM NOME_VIEW


Onde:

NOME_VIEW - Nome da VIEW que criamos.


Montando ambiente de teste

Para testarmos neste post iremos criar uma tela simples chamada PESSOA que guarda algumas informações
pertinentes a uma determinada pessoa (DATA_NASCIMENTO, nome, numero de filhos)

CREATE TABLE PESSOAS
(
    PES_ID INTEGER PRIMARY KEY,
    PES_DATA_NASCIMENTO DATE,
    PES_NUMERO_FILHOS INT,
    PES_NOME VARCHAR(48)
);



Após criar uma tabela será necessário popula-la.

INSERT INTO PESSOAS VALUES(1,'1988-12-31',3,'MARCOS');
INSERT INTO PESSOAS VALUES(2,'1982-03-31',5,'MARIO');
INSERT INTO PESSOAS VALUES(3,'1997-10-3',4,'JULHO');
INSERT INTO PESSOAS VALUES(4,'1991-11-12',2,'ROBERTO');
INSERT INTO PESSOAS VALUES(5,'1989-12-15',1,'FERNANDO');







Neste exemplo vamos criar uma view que somente mostrar o nome e a quantidade de filhos que o indivíduos na tabela recém criada tem.


CREATE VIEW NOME_FILHO (Nome, TOTAL_FILHOS) AS
SELECT  PES_NOME, PES_NUMERO_FILHOS FROM PESSOAS


Agora vamos executar a VIEW.

SELECT * FROM NOME_FILHO   


Conclusão


Como foi possível ver ao longo deste pequeno post a criação e utilização de uma view é bem simples e quando a mesma é bem utilizada pode vir a ser muito utíl.

segunda-feira, 3 de junho de 2013

Concatenando Strings ao resultado de uma Query (SELECT) (Firebird)




Introdução

O principal objetivo deste post é explica de maneira simples e rápida como se pode
manipular o resultado da execução de uma determinada query no banco de dados Firebird.


Montando ambiente de teste

Para testarmos neste post iremos criar uma tela simples chamada PESSOA que guarda algumas informações
pertinentes a uma determinada pessoa (DATA_NASCIMENTO, nome, numero de filhos)

CREATE TABLE PESSOAS
(
    PES_ID INTEGER PRIMARY KEY,
    PES_DATA_NASCIMENTO DATE,
    PES_NUMERO_FILHOS INT,
    PES_NOME VARCHAR(48)
);



Após criar uma tabela será necessário popula-la.

INSERT INTO PESSOAS VALUES(1,'1988-12-31',3,'MARCOS');
INSERT INTO PESSOAS VALUES(2,'1982-03-31',5,'MARIO');
INSERT INTO PESSOAS VALUES(3,'1997-10-03',4,'JULHO');
INSERT INTO PESSOAS VALUES(4,'1991-11-12',2,'ROBERTO');
INSERT INTO PESSOAS VALUES(5,'1989-12-15',1,'FERNANDO');



Agora podemos iniciar o post de vez.


Concatenando o resultado com String já definidas

Para concatenar o resultado de um query com uma string já definida basta colocar string entre aspas simples
e depois colocar dois paipes | após a ultima aspas simples, vide exemplo abaixo:

SELECT 'Bom dia '|| PES_NOME ||', tudo bem ?' FROM PESSOAS;

Neste exemplo o resultado será:

'Bom dia MARCOS, tudo bem ?'
'Bom dia MARIO, tudo bem ?'
'Bom dia JULHO, tudo bem ?'
'Bom dia ROBERTO, tudo bem ?'
'Bom dia FERNANDO, tudo bem ?'

segunda-feira, 10 de setembro de 2012

Instalando o postgresql no linux

Introdução


O postgreSql é um execelente banco de dados gratuíto, o mesmo é simples e rápido. Neste post irei explicar como se faz a instalação do mesmo no linux.


Instalação

Neste post vou explicar como se faz a instalação do postgresql através da interface gráfica. 
Para obter o binário do postgresql primeiramente é necessário entrar no site do desenvolvendo do mesmo e ir na área de downloads, como pode ser visto abaixo:


O link para área de downloads é http://www.postgresql.org/download/ .

Escolha a distribuição linux que você deseja usa em seu computador, no meu caso escolhi a distribuição ubuntu, logo que você escolher a distribuição desejada e clicar na mesma uma nova pagína abrirá como é possível ver abaixo:




Agora vá até o subtítulo "Graphical installer" e clique no link download. Logo que você será direcionando para um a nova página que terá as versões do postgres bem como tipo de arquitetura do sistema (32bits / 64 bits) para download.




Agora basta você clicar na versão da distribuição e  o tipo de arquitetura que você deseja realizar o download. No meu caso eu realizei o download da versão 9.1 com a arquitetura 64 bits.



Abra o terminal e vá até o local onde está o arquivo obtido pelo download e o execute como super usuário.



Sintaxe:

sudo ./nome_binario


Onde:

  •  nome_binario - Nome do binário do postgresql que será utilizado para instalação.

Exemplo:

Neste exemplo o nome do binário é postgresql-9.1.5-1-linux-x64.run logo o comando ficará:
 
 sudo ./postgresql-9.1.5-1-linux-x64.run







Logo após executar o comando será iniciado o processo de instalação do postgresql.



A tela inicial para instalação do postgresql pode ser vista abaixo, basta clicar em Next para continuar o processo de instalação.



A próxima tela é a tela que se escolhe o local onde se instala o postgresql.Após confirmar os dados click em Next.



Na próxima tela será configurado local onde será guardado os dados do banco de dados no disco. Após confirmar os dados click em Next.



Na tela abaixo é possível configurar o senha do usuário principal (postgresql) do banco de dados. Após a confirmar os dados click em Next.



Na próxima tela será configura a porta que será dada conexões para o banco de dados por padrão a porta é a 5432. Após confirmar os dados click em Next.



Na próxima tela click apenas em Next para continuar com a instalação.




Como é possível visualizar abaixo foi dado o inicio instalação do postgresql.




Agora o postgresql já está instalado em seu sistema para prosseguir de modo simples basta desabilitar a opção "Stack Builder may ...", esta opção abre uma nova tela para instalar ferramentas adicionais para manipulação do banco de dados postgresql.







terça-feira, 5 de julho de 2011

Aquirindo informações de sessão no oracle

Imagine um cenário que você precisa descobrir qual usuário está conectado em um determinado owner (usuario) no banco de dados (oracle), ou simplismente deseja verificar quais conexões e owner estão ativo.

Para solucionar tal problema basta criar um select na tabela v$session no oracle.

1. Exemplo:

SELECT
      * 
FROM  
      V$SESSION

Nesta query seria retornado todas informações relevante a tabela V$SESSION

2. Exemplo:

SELECT 
      USERNAME, 
      OSUSER, 
      MACHINE 
FROM
      V$SESSION



Nesta query seria retornado todas informações relevante ao nome do usuário(owner) utilizado no banco de dados(USERNAME) o nome do usuário do sistema operacional da pessoa que está logada (OSUSER) e o nome da máquina(MACHINE) da qual o usuário que está fazendo a consulta está logado.

Além destas consultas é possível fazer varias outras como por exemplo: saber o programa utilizado para conectar ao banco de dados, verificar a sessões activa e etc. 


quarta-feira, 9 de fevereiro de 2011

Versão nova do querymodificator

Finalmente atualizei o querymodificator corrigindo as bugs que existia na versão anterior.
Dentre as melhorias desta nova versão está o fato de todos comando SQL serem alterados para caracteres maiusculos e assim facilitar a visualização do próprio código SQL.


Para instala-lo é necessário, descompactar o arquivo em algum lugar de sua preferência e executra o arquivo install.sh.


DOWNLOAD

sexta-feira, 26 de novembro de 2010

Oracle: Diferença entre Join interno e join externo



Uma dúvida que surge quando começamos a fazer o join (junção de duas tabelas) é diferenciar de primeiro caso a diferença entre join interno (inner join) e join externo(outer join).
Hoje vamos ver de maneira simples como pode ser explicado tal confusão:


JOIN EXTERNO (OUTER JOIN)

O Join externo acontece quando desejamos pegar todas informações de duas tabelas destintas. Caso durante a junção da tabelas haja campos que não tenham valores (null) esses campos serão preenchidos com null. Cabe salientar que é possível escolher qual tabela favorecer neste tipo de join, pode ser a tabela da direita ou da esquerda. Como pode ser visto abaixo:

Sintaxe: 

SELECT COLUNAS 
FROM TABELA1 
RIGHT/LEFT OUTER JOIN  TABELA2 ON TABELA1.ID=TABELA2.ID_TAB1

Cabe salientar que no RIGHT/LEFT é utilizado só uma das opções ou RIGHT ou LEFT

Exemplo:

Neste exemplo existe duas tabelas distintas CIDADE e FABRICANTE, irei fazer um join externo para direita(right) das mesmas:

SELECT * FROM fabricante RIGHT OUTER JOIN cidade ON fabricante.cidade_id = cidade.id

Caso você esteja utilizando o Oracle o outer join pode ser feito utilizando a notação (+) ao lado tabela que você deseja que seja favorecida:

Sintaxe:

SELECT CAMPOS 
FROM TABELA1,TABELA2 
WHERE TABELA1.ID(+)=TABELA2.ID_TAB2

Exemplo:

SELECT
FROM CIDADE,FABRICANTE
WHERE
CIDADE.ID(+)=FABRICANTE.CIDADE_ID

Click na imagem para aumenta-la


JOIN INTERNO (INNER JOIN)

O Join interno acontece quando desejamos pegar todas informações de duas tabelas distintas, ao contrario do join interno este tipo de join pega somente as combinações validas onde não existe valores nulos.

Sintaxe: 

SELECT COLUNAS 
FROM TABELA1 
INNER JOIN  TABELA2 ON TABELA1.ID=TABELA2.ID_TAB1

Exemplo:

Neste exemplo existe duas tabelas destintas CIDADE e FABRICANTE, irei fazer um join interno.

SELECT * FROM fabricante  INNER JOIN cidade ON fabricante.cidade_id = cidade.id

Existe uma maneira mais fácil  e menor de fazer este tipo de join como é exposto abaixo:

Sintaxe:

SELECT CAMPOS 
FROM TABELA1,TABELA2 
WHERE TABELA1.ID=TABELA2.ID_TAB2

Exemplo:

SELECT * 
FROM CIDADE,FABRICANTE
WHERE
CIDADE.ID=FABRICANTE.CIDADE_ID


Click na imagem para aumenta-la





quarta-feira, 3 de novembro de 2010

Oracle: Criando sequence




Quando comecei a criar tabelas e guardar informações em banco de dados comecei pelo Oracle e depois usei durante um tempo o Msql, mas logo voltei para o Oracle.
No Msql existe uma função chamada AUTO_INCREMENT que pode ser utilizada para incrementar um id de uma tabela sozinho, que precisemos nos preocupar com isso. Porém no Oracle não existe esta função o que me levou durante um tempo a pesquisar sobre o assunto, uma solução que encontrei para tal problema foi a criação de SEQUENCE, que funciona quase da mesma maneira.

Criando uma SEQUENCE

Sintaxe:

CREATE SEQUENCE nome_sequence MINVALUE valor_minimo MAXVALUE valor_maximo INCREMENT BY valor_incremento START WITH valor_inicial CACHE valor_cache NOORDER NOCYLE

nome_sequencia = Nome que será dado a sequence.
valor_minimo = Valor mínimo da sequencie.
valor_maximo = Valor máximo que a sequence atingirá.
valor_incremento = Valor que será incrementado cada vez que uma sequence for requerida
valor_inicial  = Valor inicial da sequence, valor que iniciará a mesma.
valor_cache = Valor que informa o número de valores que o cache poderá conter, para uma consulta rápida.

Exemplo:

CREATE SEQUENCE SEQ_ID MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE ;


Utilizando a sequence


Agora que sequence foi criada para utiliza-la, pendo seu próximo valor:

Sintaxe:
        nome_sequence.nextVal

Exemplo:
Existe uma tabela com as colunas id e nome, chama LISTA_CHAMADA:
Para inserir dados na mesma utilizando a sequence faremos o seguinte:

INSERT INTO LISTA_CHAMADA VALUES(seq_id.nextVal, 'Maria')

sexta-feira, 15 de outubro de 2010

Oracle: Atualizar coluna de uma tabela



Resumo:

UPDATE nome_tabela SET nome_coluna=novo_valor WHERE logica_para_filtrar


Uma maneira simples de atualizar o conteúdo de uma coluna em uma tabela no oracle é a seguinte:

Sintaxe:


UPDATE nome_tabela SET nome_coluna=novo_valor WHERE logica_para_filtrar

nome_tabela - O nome da tabela em questão


novo_valor    - Novo valor que será atribuído ao campo específico. 


nome_coluna - O nome da coluna que terá o dado modificado.


logico_para_filtra - Normalmente alguma lógica que filtre o item se deseja modificar.



Exemplo:

UPDATE tabela_magusCode SET nome_usuario='Robson' WHERE id = '1234'

Neste exemplo será atualizado o item nome para 'Robson' onde o id do mesmo é '1234' na coluna tabela_magusCode

segunda-feira, 27 de setembro de 2010

Criar usuario com privilégio de dba no oracle.


Resumo:

CREATE USER nome IDENTIFIED BY senha

GRANT DBA TO nome


Logo que comecei a usar o banco de dados Oracle uma dúvida que surgiu logo de início é como criar um usuário com privilégios de DBA.
Para isto é necessário seguir dois passos:

1º Passo: Criar um usuário no banco de dados:

Sintaxe:

CREATE USER nome IDENTIFIED BY senha

nome - Consiste no nome que o seu usúario terá.
senha - Consiste na senha que o usuário utilizará para logar no sistema.

Exemplo:

CREATE USER MAGUSCODE IDENTIFIED BY MAGUSCODE


Neste exemplo será criado um usuário com o nome de MAGUSCODE com a senha de acesso MAGUSCODE

2º Passo: Atribuir privilégio de DBA.

Sintaxe:

GRANT DBA TO nome

nome - Nome do usuário que será atribuído o privilégio de DBA.

Exemplo:

GRANT DBA TO MAGUSCODE


Neste exemplo será atribuído ao usuário MAGUSCODE o previlégio de DBA.

quinta-feira, 9 de setembro de 2010

Criar, Deletar, altera senha de usuário no oracle de maneira simples.

 

Para criar um usúario:

CREATE USER <usuario>> IDENTIFIED BY <>;

<> - nome do usuario a ser criado.

<> - senha do novo usúario.

Exemplo:
 CREATE USER maguscode IDENTIFIED BY maguscode



Alterar a senha

ALTER USER <> IDENTIFIED BY <>

<>   - nome do usuario que terá  a senha alterada.
<> - novo password utilizado.

Exemplo:

ALTER USER maguscode IDENTIFIED BY maguscode2


Deletar usúario:

DROP USER <usuario>>

<usuario>> - nome do usúario a ser deletado.

Exemplo:

DROP USER maguscode