Olá pessoal, hoje tenho uma informação que muitos acham ser apenas enganação.
Atualmente existem diversos aplicativos e plataformas que concedem descontos em pagamentos de contas, recarga de celular e cartões de transporte públicos.
Hoje vou apresentar a vocês o RecargaPay!
Além dos descontos você pode realizar os pagamentos utilizando seu cartão de crédito e se seu cartão possuir algum programa de fidelidade você acumula pontos e milhas, mas recomento pagar até um máximo de R$1.000,00, pois ultrapassando esse valor será cobrada uma taxa de 2,49% por transação.
Para obter o app acesse o LINK
Disponível para sistema Android, é de fácil instalação e já está no mercado a bastante tempo. Eu já o utilizo a um bom tempo e recomendo!
sexta-feira, 27 de setembro de 2019
segunda-feira, 9 de setembro de 2019
Minerar CryptoMoedas pelo navegador de Internet
Conheça o CRYPTOTAB, um navegador de Internet que lhe possibilita ganhar frações de Bitcoins enquanto navega pela Internet sem prejudicar no desempenho ou afetar o tempo de vida útil do seu computador.
Obtenha o programa pelo link: Aqui
O programa é fácil de instalar e operar eu já utilizo a alguns meses e toda vez que solicito pagamento das crypto moedas mineradas eu recebo em no máximo 3 dias em minha carteira digital de preferência.
Aproveite mais esta ferramenta de mineração em moedas digitais.
Obtenha o programa pelo link: Aqui
O programa é fácil de instalar e operar eu já utilizo a alguns meses e toda vez que solicito pagamento das crypto moedas mineradas eu recebo em no máximo 3 dias em minha carteira digital de preferência.
Aproveite mais esta ferramenta de mineração em moedas digitais.
terça-feira, 8 de janeiro de 2013
Cursos Online para Certificação Microsoft Grátis
Certificação Microsoft
Uma boa notícia para os estudantes e profissionais da área de TI que ainda não estavam por dentro das oportunidades oferecidas pela Microsoft. Segue a dica.
Para os interessados em obter Certificações Microsoft, segue o site.
Bom dia amigos!
Uma boa notícia para os estudantes e profissionais da área de TI que ainda não estavam por dentro das oportunidades oferecidas pela Microsoft. Segue a dica.
Para os interessados em obter Certificações Microsoft, segue o site.
Neste site os cursos são gratuitos, os interessados precisam apenas ter uma conta de e-mail Windows Live, hotmail, etc. E fazer um simples cadastro.
O site oferece diversos conteúdos relacionados aos sistemas operacionais, servidores, etc. Um ótimo impulsionador de conhecimento que conta também com vídeos para melhor entendimento do conteúdo.
Aproveite!!!
Sucesso!
Dúvidas e sugestões deixe seu comentário!
domingo, 6 de janeiro de 2013
Problemas com Informática?
Tecnologia da Informação!
Está tendo dificuldades em instalar Sistema Windows e seus respectivos drivers do Notebook ou outros?
Deixe um comentário em nosso blog, que logo lhe daremos uma resposta para auxiliá-lo na solução de problemas computacionais.
Thank's!!!
sexta-feira, 17 de agosto de 2012
Curso Linguagem SQL, Lição 05
Lição 05 - Definindo dados
Domínio dos dados
Até agora consideramos que os dados já foram informados pelo usuário. Agora construiremos nossas tabelas. Conheceremos os comandos responsáveis em criar cada tabela, atribuir o um tipo os dados.
Os dados em SQL podem ser dos seguintes tipos:
char [n];
O char é uma cadeia de caracteres de tamanho fixo n que é definido pelo usuário.
varchar [n];
O varchar é uma cadeia de caracteres de tamanho variável sendo que tem como tamanho máximo n que é informado pelo usuário.
date;
Dados com esse formato aceitam datas, dia, mês e ano (com quatro dígitos).
time;
Dados com esse formato aceitam horário, horas, minutos e segundos.
int;
Esse formato aceita números inteiros.
real;
Esse formato aceita números reais.
float [n];
Aceita número flutuante com precisão n definida pelo usuário.
Definição de esquema
Para criar uma tabela utilizamos o comando create table e para definir quem será a chave primária usamos o comando primary key.
Observe o exemplo a seguir onde criaremos tabelas e definiremos a chave primária.
create table cliente (nome varchar(20) not null,
endereco varchar(50),
CPF char(11) not null,
data_nascimento char(10),
primary key(CPF))
create table filme (nome varchar(20) not null,
ator_principal varchar(20),
diretor varchar(20),
genero varchar(10),
primary key(nome, ator_principal),
check genero in ("Romance","Ação","Drama","Terror","Comédia"))
No primeiro exemplo criamos a tabela cliente, como você pode observar a estrutura do create table é composta do nome da tabela que será criada e dos atributos com seus devidos domínios. Depois de informar os atributos, informamos a chave primária, através do comando primary key.
Repare que usamos not null na criação do atributo nome, ele é usado quando queremos forçar o usuário a colocar o dado. O atributo CPF, por exemplo, é nossa chave primária, por isso não poderia ficar em branco, por isso também foi usado um not null para esse atributo.
No segundo exemplo, usamos a cláusula check, ela é usada para determinar uma condição ao atributo. No caso do nosso exemplo, ele define que o gênero do filmes só pode ser Romance, Ação, Drama, Terror ou Comédia.
Removendo e alterando tabelas
Para remover uma tabela temos duas opções possíveis o drop table e o delete from. A diferença entre os dois é que o primeiro é mais drástico, com ele remove-se a tabela e todos os seus atributos, já no segundo a tabela é mantida mas os atributos são apagados.
Utilizando o delete from atributos poderão ser inseridos futuramente pois a tabela não foi excluída, ela ainda continuará existindo no banco.
Observe o exemplo abaixo:
delete from cliente
drop table cliente
Primeiro deletamos todos os atributos da tabela cliente e depois deletamos a tabela. Poderiamos ter usado apenas o drop table mas usamos os dois para mostrar a sintaxe das duas cláusulas.
Para adicionar um novo atributo a uma tabela utilizamos o alter table. As tuplas desse atributo inserido receberão o NULL para seus valores. Observe como utilizar o alter table.
alter table cliente add RG varchar(10)
Como podemos observar, informamos a tabela que terá um atributo adicionado, o nome do atributo e o domínio.
O alter table pode ser usado também para remover um atributo, ao invés de utilizar o add, usa-se drop, como no exemplo a seguir.
alter table cliente drop endereco
Informa-se o nome da tabela e o atributo a ser removido.
Restrições
Vimos anteriormente que ao criar uma tabela podemos criar restrições utilizando a cláusula check. Existe outro modo de criar uma restrição dando um nome à restrição, isso facilitará na hora de saber qual restrição foi violada.
Para criar essa restrição utilizaremos o creat domain. Observe o exemplo a seguir:
create domain CPF char(11) constraint teste_CPF check (value not null)
create domain preco numeric(4,2) constraint teste_preco check (value >=3,00)
No primeiro exemplo, criamos um teste_CPF que avalia se o CPF não é igual a null. Já no segundo verificamos se o preço, que tem 4 casas sendo que duas são depois da virgula, é maior ou igual a 3.
Triggers
Trigger, é uma palavra do inglês que em português seria algo como gatilho, essa cláusula representa uma ação que é realizada automaticamente quando ocorre uma mudança, especificada nessa cláusula, em banco de dados.
Logo abaixo temos uma trigger que é ativada quando acrescenta-se um novo preço de aluguel de dvd na tabela aluguel. Se for informado qualquer valor menor que três a trigger atualizará automaticamente o banco substituindo o valor por 3 que é o valor mínimo de um aluguel.
define trigger preco_menor on update of aluguel
(if new aluguel.preco < 3
then (update aluguel.preco
set aluguel.preco = 3)
Exercício
Como foi chamada a versão da Linguagem SQL revisada em 1999?
Deixe suas respostas nos comentários. Obrigado!
Fonte: Comunidade CDTC
quinta-feira, 16 de agosto de 2012
Curso Linguagem SQL, Lição 04
Lição 04 - Modificação do banco de dados e criação de relações
Modificação do banco de dados e criação de relações
Em um banco de dados é permitida não só a consulta mas também a inserção, remoção e atualização dos dados.
Inserindo dados
Para inserir dados no banco você deve especificar qual tabela receberá os dados. Informar o atributo que receberá o dados não é obrigatório mas se não for informado os dados inseridos devem estar na ordem em que os atributos estão no banco.
Vamos analisar os exemplos seguintes:
insert into filme
values("Titanic", "Leonardo DiCaprio", "Fulano de Tal", "romance", 8, 1, 190)
insert into filme (duracao, copia, idade, genero, diretor, ator_principal, nome)
values(190, 1,8, "romance","Fulano de Tal", "Leonardo DiCaprio", "Titanic")
Veja que nos dois exemplos insere-se os mesmo dados mas no segundo exemplo não precisa-se respeitar a ordem dos atributos no banco pois estão sendo informados os atributos que receberão os dados.
Dentro de uma operação de inserção pode ser utilizada uma pesquisa para achar as tuplas que deve ser inseridos dados.
Suponha que todos os dependentes serão transformados em clientes, então serão inseridos na tabela cliente todos os dependentes que se encontram na tabela associados.
insert into cliente
select nome, "Avenida Teste" , CPF, NULL, NULL
from associado
Removendo dados
Para remover dados de uma tabela utiliza-se em SQL o delete from. No exemplo a seguir, removeremos todos os filmes cadastrados no banco que tenham duração maior que 120 minutos.
delete from filme
where duracao>120
Como no insert, é possível utilizar uma cláusula select embutida ao delete. Vamos excluir todos os filmes que foram alugados por clientes e que tinham como data de devolução o dia 12/10/2006.
delete from filme
where nome in (select nome_filme from aluguel where data_devolucao = "12/10/2006")
Atualizando dados
Quando deseja-se atualizar os dados de uma tabela usamos o update e o set para informar qual dado será atualizado e como. Observe o exemplo a seguir:
update aluguel
set data_devolucao = "12/01/2007"
where data_devolucao = "11/01/2007"
Nesse exemplo modificaremos todos os aluguéis que deveriam ser devolvidos no dia "11/01/2007" para o dia "12/01/2007".
Criando relações
Para compor relações, tomam-se duas relações e o resultado é outra relação. Para realizar uma junção selecionamos o tipo de junção, que representa como as tuplas que não tem relação com nenhuma outra tupla aparecerão na relação, e selecionamos também uma condição de junção, selecionando quais tuplas das duas relações têm correspondência e quais tuplas aparecerão no resultado na junção.
Vamos estudar os seguintes tipos de junção: inner join, left outer join, right outer join, full outer join. Como condição de junção temos:natural, on e using.
A condição on costuma ser a mais utilizada pois é bem parecida com a cláusula where. Um par de linhas será correspondente se a expressão da condição on for verdadeira.
A cláusula using é bem parecida com a on. Você informa a coluna e o nome das tabelas e ele vai pesquisar a coluna que tem o mesmo nome da que você informou. O resultado sai de forma reduzida, sem a repetição das colunas que são iguais.
Já a cláusula natural é mais resumida que a using. Essa cláusula comparará todas as colunas de nome igual das duas tabelas.
Vamos agora verificar os tipos de junção:
Inner join
Esta junção retorna todos os pares com correspondentes de linhas nas duas tabelas e descartam as linhas sem correspondentes de ambas as tabelas.
Vamos utilizar como exemplo as seguintes tabelas:
cliente
|
nome
|
CPF
|
codigo
|
|
Ana
Maria
|
002.123.234-45
|
0001
|
|
Joao
da Silva
|
456.789.987-22
|
0002
|
|
Maria
Costa
|
123.456.789-99
|
0003
|
aluguel
|
codigo_cliente
|
nome_filme
|
|
0001
|
Titanic
|
|
0001
|
Romeu
e Julieta
|
|
0002
|
A
Família Adams
|
Select *
from cliente inner join aluguel on
cliente.codigo = aluguel.codigo_cliente
Ao realizar o inner join anterior teremos como resultado a seguinte relação:
|
nome
|
CPF
|
codigo
|
codigo_cliente
|
nome_filme
|
|
Ana
Maria
|
002.123.234-45
|
0001
|
0001
|
Titanic
|
|
Ana
Maria
|
002.123.234-45
|
0001
|
0001
|
Romeu
e Julieta
|
|
Joao
da Silva
|
456.789.987-22
|
0002
|
0002
|
A
Família Adams
|
Ele relaciona as duas tabelas pelo código, e o cliente que não tá relacionado nas duas é desconsiderado na relação resultante.
Outer join
É a seleção em que são restritas as linhas que interessam em uma tabela, mas são consideradas todas as linhas de outra tabela. Ou seja, queremos ver quais linhas de uma tabela estão relacionadas com a outra tabela e quais as linhas não estão.
- left outer join - São incluídas todas as linhas da primeira tabela na expressão;
- right outer join - São incluídas todas as linhas da segunda tabela na expressão;
- full outer join - São incluídas todas as linhas de ambas as tabelas, as que satisfazem a expressão e as que não satisfazem.
Usando o right outer join, no exemplo anterior, não haveria mudança no resultado. Usando o left outer join e o full outer join o resultado seria o seguinte:
|
nome
|
CPF
|
codigo
|
codigo_cliente
|
nome_filme
|
|
Ana
Maria
|
002.123.234-45
|
0001
|
0001
|
Titanic
|
|
Ana
Maria
|
002.123.234-45
|
0001
|
0001
|
Romeu
e Julieta
|
|
Joao
da Silva
|
456.789.987-22
|
0002
|
0002
|
A
Família Adams
|
|
Maria
Costa
|
123.456.789-99
|
0003
|
NULL
|
NULL
|
Como pode-se ver observando o resultado, as relações do exemplo anterior continuam a aparecer mas é adicionado o cliente que não tinha nenhum aluguel e por isso não aparecia. Usando o right outer join não teríamos mudança no resultado pois nenhuma tupla da segunda tabela ficou de fora do resultado.
Outro exemplo
Vamos agora mostrar um exemplo usando using e natural para deixar os conceitos bem claros:
Considere as tabelas do exemplo anterior, mas agora a coluna codigo_cliente da tabelaaluguel chama-secodigo. Assim usando using e natural teremos resultados.
Select *
from cliente inner join aluguel using
(codigo_cliente)
select *
from cliente naturalinner join aluguel
No primeiro exemplo mostramos como usar o using, informamos o nome das duas tabelas e o nome da coluna que será pesquisada. Já no segundo, você informa apenas o nome das tabelas e ele procura entre todas as tabelas as de mesmo nome.
Tome muito cuidado ao usar a cláusula natural pois se, por exemplo, na tabela aluguel, a coluna código referi-se ao código do filme alugado teríamos um grande problema. Seriam duas colunas de nomes iguais mas que se referem a coisas diferentes, uma ao código do cliente e a outra ao código do filme.
Exercício
Com base nos conteúdos já estudados, crie duas tabelas a relação entre as tabelas.
Deixe suas respostas nos comentários. Obrigado!
Fonte: Comunidade CDTC
quarta-feira, 15 de agosto de 2012
Curso Linguagem SQL, Lição 03
Lição 03 - Comandos avançados
Conjuntos
É possível realizar operações de conjuntos através da SQL, mas é necessário que os resultados das pesquisas sejam de tipos equivalentes.
União
(select nome from cliente)
union
(select nome from associado)
Nesse exemplo, têm-se como resultado o nome de todas as pessoas que são cliente ou dependentes (ou os dois). Veja que como numa operação de união de conjuntos, essa operação elimina automaticamente todas as repetições.
Para que os resultados repetidos sejam apresentados deve-se acrescentar all após union.
Intersecção
(select codigo from cliente)
intersect
(select codigo_titular from associado)
Nessa operação, são selecionados os códigos de todos os clientes que possuem dependentes. Assim como a união, essa operação elimina repetições e para não eliminar as repetições deve-se usar all assim como na união.
Exceção
(select codigo from cliente)
except
(select codigo_titular from associado)
Nesse exemplo, são selecionados todos os clientes que não possuem dependentes. Assim como as operações anteriores repetições não são apresentadas, para apresentá-las usa-se, novamente, o all.
Subconsultas Aninhadas
Por meio da SQL podemos aninhar subconsultas, isto é, colocar uma consulta dentro de outra.
Por exemplo:
Vamos supor que queremos pesquisar o nome dos clientes que alugaram filmes nos quais o "Tom Cruise" é o ator principal.
- Primeiro temos que pesquisar todos os filmes nos quais o "Tom Cruise" é o ator principal.
- Depois vemos quem são as pessoas que alugaram.
Para isso vamos usar duas pesquisas.
IN e NOT IN
Select cliente.nome
from cliente, aluguel
where cliente.codigo=aluguel.codigo_cliente
and
aluguel.nome_filme in (select nome from filme where ator_principal = "Tom Cruise")
Note que para igualar ao resultado de outra pesquisa usa-se a palavra in. Assim com essa pesquisa, primeiro seleciona-se o nome de todos os filmes nos quais o "Tom Cruise" é o ator principal e depois pesquisa-se o nome de todos os clientes que alugaram um dos filmes que foram resultados da primeira pesquisa.
Quando deseja-se excluir um resultado, ou seja, se quiséssemos o nome dos clientes que não alugaram filme do "Tom Cruise" é só usar not in ao invés de in.
SOME E ALL
Podemos também comparar resultados de outros modos. A expressão "maior que algum" é representada pela expressão >some, comparativamente podem ser usadas as expressões <some, <=some, >=some, =some e <>some. Um sinônimo de some que caiu no desuso é o any, foi abandonado por causar ambiguidade.
Quando a idéia é "maior que todos" usa-se o >all. Assim como com o some, outras variações podem ser usada como: <all, <=all, >=all, =all e <>all.
Vamos mostrar um exemplo de como o some e o all podem ser aplicados.
Select cliente.nome
from cliente, aluguel
where cliente.nome = "Maria Aparecida da Silva"
and cliente.codigo=aluguel.codigo_cliente
and sum(preco)<=some (selectsum(preco) from aluguel group by codigo_cliente)
Nesse exemplo, verifica-se se existe algum cliente que tenha a soma de todos os aluguéis de dvds maior ou igual que o da Maria Aparecida da Silva.
Select cliente.nome
from cliente, aluguel
where cliente.nome = "Maria Aparecida da Silva"
and cliente.codigo=aluguel.codigo_cliente
and sum(preco)<=all (select sum(preco)from aluguel group by codigo_cliente)
Esse exemplo é muito parecido com o anterior só que verifica se todos os clientes possuem a soma de seus aluguéis maior ou igual ao da Maria Aparecida.
EXISTS e NOT EXISTS
Quando desejamos verificar se o resultado de uma pesquisa possui algum resultado específico podemos usar a cláusula exists.
Vamos pesquisar se existe algum cliente que possui dependentes. Para isso vamos usar a pesquisa a seguir:
select nome
from cliente
where exists (select * from cliente, associado where cliente.codigo = associado.codigo_titular)
Caso queira verificar se um determinado resultado não existe usamos o not exists.
UNIQUE
Quando queremos verificar se um resultado é único, podemos usar a cláusula unique. No exemplo a seguir, acharemos todos os cliente que possuem apenas um dependente.
Select nome
from cliente,associado
where cliente.codigo = associado.codigo_titular
and unique ( select codigo_titular from associado)
Visões
Visões podem ser entendidas como uma maneira alternativa de visualizar os dados de uma tabela. Pode ser considerada uma tabela virtual. As visões são utilizadas quando não é desejável que o usuário tenha um acesso aos modelo lógico como um todo, quando você tem a intenção de que ele veja apenas o necessário.
Suponha que na nossa locadora os dependentes só podem ser esposa ou marido, que filhos não são mais aceitos como dependentes. Criaremos uma visão que agrupará as pessoas que se encaixam nessa restrição mas o banco de dados não será alterado. Como citamos anteriormente, é como se uma tabela virtual fosse criada, sem alterar as existentes.
Createview dependetes_restritos as(select RG, nome, cidade, parentesco, codigo_titular
from associado
where parentesco = "marido"
or
parentesco = "esposa")
Criamos uma visão chamada dependentes_restritos onde só selecionou-se os dependentes que eram marido ou esposa do titular.
Após criar uma visão você pode acessá-la como uma tabela qualquer. Por exemplo:
select nome
from dependentes_restritos
where codigo_titular = 012345
Nesse exemplo, ele procurará na visão o nome do dependente do titular com código 012345.
Para destruir a visão que criamos basta executar o seguinte comando:
drop view dependentes_restritos
Exercício
Descreva um pouco sobre os comandos avançados e para o que eles podem ser utilizados?
Deixe suas respostas nos comentários. Obrigado!
Fonte: Comunidade CDTC
terça-feira, 14 de agosto de 2012
Curso Linguagem SQL, Lição 02
Lição 02 - Comandos básicos
Estruturas Básicas - select, from e where
Vamos agora discutir os comandos básicos da SQL. É importante saber nesse momento que as entidades envolvidas no banco de dados não podem ter nomes repetidos, o que é uma exigência do modelo relacional. Outra característica importante é a possibilidade de valores nulos para os atributos de uma entidade, se não houver restrição para isso, pois na linguagem SQL é possível restringir que um atributo receba valor nulo, ou seja, para esse atributo sempre terá que ser definido um valor qualquer, isso se aplica por exemplo as chaves primárias.
Select
O select é utilizado para realizar consultas. Vamos supor que queremos encontrar o nome de todos os associados da locadora, definida no nosso exemplo. A estrutura básica dessa consulta seria:
select nome from associado
where cidade = "Brasília"
Após o select colocamos o campo que queremos pesquisar, e após o from especificamos para qual tabela a pesquisa será feita. A cláusula where pode ser omitida e nela coloca-se alguma restrição para a pesquisa, nesse caso a nossa restrição é "Brasília" será mostrados apenas os associados de Brasília.
Na linguagem SQL é permitida a existência de tuplas duplicadas, ou seja no nosso exemplo anterior apareceria associados com mesmo nome caso existisse. Quando se quer no resultado de uma pesquisa apenas valores diferentes usa-se a palavra distinct da seguinte forma:
select distinct nome
from associado
Se você quiser deixar explícito de que a duplicação será aceita, pode-se usar all no lugar de distinct. Quando se deseja mostrar todos os atributos de uma tabela usa-se a seguinte configuração:
select *
from cliente
Esse exemplo mostra todos os atributos da tabela cliente. Outra característica importante da cláusula select é que pode-se realizar operações nela, como mostrado logo abaixo:
select idade*10
from filme
Essa operação não alterará o atributo na tabela mas apenas mostrará como resultado da pesquisa a idade do filme vezes 10.
From
Na cláusula from, como foi dito anteriormente, coloca-se os nomes das tabelas que foram usadas para a busca. É importante ressaltar que mais de uma tabela pode ser utilizada. No exemplo a seguir queremos saber quais são os clientes que estão com filmes:
select cliente.nome
from cliente, aluguel
where cliente.codigo = aluguel.codigo_cliente
Observe que informamos a qual tabela cada atributo pertence usando a estrutura cliente.nome, por exemplo. Essa construção só é necessária se os atributos de diferentes tabelas tiverem nomes iguais, caso contrário essa construção se torna opcional. Mesmo sendo opcional é aconselhável utilizá-la para deixar claro de qual tabela é o atributo.
Where
A cláusula where é utilizada para que se possa impor restrições para a pesquisa. No exemplo anterior fizemos uma pesquisa onde o código do cliente pesquisado fosse igual ao código do cliente que alugou um determinado filme. Isso foi necessário porque na tabela de aluguel não existe o nome do cliente, apenas o código e com essa estrutura podemos saber o nome de quem alugou determinado filme.
Algumas palavras-chave podem ser usadas junto com a cláusula where, elas são: between, and, not e or. Bem como os operadores de comparação: <, >, = e <>.
Veja os exemplos abaixo:
select nome
from cliente
where codigo between 1000 and1005
select aluguel.nome
from cliente, aluguel
where cliente.nome = "Maria Aparecida" or cliente.nome = "João da Silva"
and cliente.codigo = aluguel.codigo_cliente
No primeiro exemplo seleciona-se o nome dos cliente que tem código entre 1000 e 1005. No segundo, o nome do filme que foi alugado pelo cliente com nome de Maria Aparecida ou João da Silva.
Para verificar se um valor é nulo, usa-se por exemplo:
where preco is null
Estruturas Básicas - rename, strings e ordenação
Rename
As vezes é interessante renomear um atributo na hora de apresentá-lo. Isso pode ser necessário quando, por exemplo, dois atributos de tabelas diferentes serão apresentados. Para realizar essa mudança usa-se a palavra as. Essa palavra pode ser utilizada tanto para renomear atributos como para renomear tabelas. Algumas vezes é necessário renomear tabelas para facilitar a escrita.
Select aluguel.nome as nome_filme
from aluguel
where nome_filme = "Titanic"
select cliente1.nome, cliente2.nome
from cliente as cliente1, cliente as cliente2
where cliente1.data_nascimento = "05/05/1955" and cliente2. data_nascimento = "03/12/1980"
Utilizando Strings
Para comparar strings utiliza-se a palavra like na cláusula where. Para comparar uma substring, utiliza-se o caractere "%" e para comparar qualquer caractere utiliza-se o caractere "_".
select nome
from cliente
where nome like "Maria%"
select nome
from cliente
where nome like "%ata%"
select nome
from cliente
where nome like "Juli_"
select nome
from cliente
where nome like "_ _ _ _ _"
No primeiro exemplo, são selecionados todos os cliente que têm o nome começando por Maria. No segundo exemplo, todos os cliente que possuem a seqüência de caracteres "ata" no início, meio ou fim do nome. O caractere "%" indica zero ou mais caracteres na posição.
No terceiro exemplo, seleciona-se todos os nomes que começam com Juli e têm apenas um caractere depois. E no quarto exemplo, seleciona-se todos os nomes que possuem 5 caracteres.
É possível também o uso de not like para procurar por diferenças ao invés de igualdades.
Ordenando o resultado
Para ordenar o resultado da pesquisa, utiliza-se o comando order by, que ordena de modo ascendente. Caso deseje ordenar de modo descendente acrescenta-se o desc.
Select *
from cliente
order by nome
select *
from cliente
order by nome desc, codigo asc
No primeiro exemplo, ordena-se pelo nome de modo ascendente e no segundo descendente e ascendente. É possível ordenar duas colunas como mostrado no segundo exemplo, ordenando na ordem em que forem apresentadas.
Funções
A linguagem SQL permite o uso de funções pré-definidas para realizar operações de soma(sum), mínimo(min), máximo(max), média(avg) e contagem(count).
As funções avg e sum impõem que a entrada da função seja um numeral, já as outras funções aceitam strings como entrada.
As funções podem ser usadas de diferentes formas. Vamos citar um exemplo onde soma-se o preço de todos os aluguéis realizados por um cliente.
Select nome,sum(preco)
from cliente, aluguel
where codigo = codigo_cliente
group by nome
Quando deseja-se aplicar condições a grupos usa-se a cláusula having. Por exemplo, vamos reunir todos os clientes que possuem uma conta maior que 50 reais.
Select nome,sum(preco)
from cliente, aluguel
where codigo = codigo_cliente
group by nome
having sum(preco) > 50
Exercício
Quais são os comandos que fazem parte das estruturas básicas da Linguagem SQL?
Deixe suas respostas nos comentários. Obrigado!
Fonte: Comunidade CDTC
segunda-feira, 13 de agosto de 2012
Curso - Linguagem SQL, Lição 01
Lição 01 - Introdução
Histórico
Histórico
A SQL, Structured Query Language, é uma linguagem de pesquisa para banco de dados relacionais. A maioria das características originais da SQL foram inspiradas na álgebra relacional.
SQL é normalmente pronunciado em português como "esse-quê-ele", porém sua pronúncia correta deveria ser "síquel", do inglês "sequel", ou "alguma coisa que segue outra coisa". SQL é uma brincadeira com o nome da primeira linguagem de consulta QUEL.
Originalmente a SQL foi criada pela IBM, mas logo outras visões baseadas nele foram criadas por outros produtores. Assim, com essa expansão, foi criado um padrão para controlá-la pela American National Standards Institute, ANSI em 1986, e o ISO em 1987.
A SQL ganhou várias versões conforme ia sendo revisada. Em 1992, 1999 e 2003 quando foi revista, a SQL foi chamada de SQL-92, SQL 3 e SQL: 2003, respectivamente. Na SQL 3 foram inseridas ao contexto da SQL expressões regulares de emparelhamento, queries recursivas e triggers. A SQL: 2003 introduziu características relacionadas ao XML.
Definição de um exemplo
Durante o nosso curso, utilizaremos o exemplo de uma locadora. A seguir, mostraremos as entidades utilizadas junto com seus atributos.
- Cliente(nome, endereco, CPF, data_nascimento,código);
- Associado(RG, nome, cidade, parentesco, codigo_titular);
- Aluguel(codigo_cliente, nome_ filme, preco, data_aluguel, data_devolucao);
- Filme(nome, ator_principal, diretor, genero, idade, copia, duracao).
Considerações Iniciais
Para começar o estudo dos comandos da SQL, alguns conceitos devem ser lembrados:
Transação: É uma coleção de operações que desempenham uma determinada função. Como exemplo, usemos uma locadora de vídeos. Para alugar um DVD é necessário: escolher o filme, verificar a disponibilidade no estoque e depois dar baixa no sistema. Ou seja, todas estas ações juntas são operações que precisam ser realizadas para que a transação de alugar um DVD seja realizada.
Entidade: É um objeto ou alguém que pode ser representado num banco de dados. No nosso exemplo da locadora, os clientes são entidades. Uma entidade tem várias propriedades, no nosso exemplo, o cliente pode ter um telefone, um código e outros dados pessoais.
Atributos: Um entidade é formada por um conjunto de atributos que são as propriedades que demos como exemplo no item anterior. Cada atributo tem um conjunto de valores possíveis, isso mostra que aquele atributo receberá valores daquele tipo.
Relacionamentos: O relacionamento é uma associação entre entidades, uma relação entre elas. Por exemplo, se tivéssemos, além da entidade clientes, a entidade empréstimos que armazenasse todos os DVDs alugados. Existe um relacionamento entre elas que informaria quem alugou determinado dvd e caso necessitasse contatar a pessoa seria possível através dos dados pessoais encontrados nos atributos da entidade cliente.
Chaves: As chaves são a forma de ligação entre as entidades promovendo o relacionamento entre elas. Uma superchave é o conjunto de um ou mais atributos que tomados, juntos, identificam uma entidade. Na nossa locadora, o código do cliente seria uma superchave pois cada cliente teria seu próprio número. Se não existisse um código, o nome da pessoa e o telefone juntos poderiam ser uma superchave pois não se encontraria morando no mesmo local duas pessoas com o mesmo nome. Essa é a ideia de superchave, juntar atributos para conseguir relacionar entidades. Chave candidata é aquela que não possui nenhum subconjunto que possa ser uma superchave. A chave candidata escolhida pelo projetista é chamada de chave primária. A chave primária é o que diferenciará as entidades.
Tupla: O resultado de nossas pesquisas serão chamados de tuplas. Tupla é um conjunto de objetos com as mesmas características.
Composição da Linguagem SQL
A linguagem SQL tem várias partes:
- Linguagem de Definição de Dados (DDL) - Através da DDL tem-se comandos de tratamento de relações e criação de índices;
- Linguagem Interativa de manipulação de dados (DML) - É uma linguagem de consulta baseada na álgebra relacional e no cálculo relacional de tuplas. Veremos o que é tupla futuramente no curso. Através do DML temos também comandos de inserção, exclusão e modificação de tuplas no banco de dados;
- Incorporação DML - A SQL é usado também integrado com linguagem de programação como Cobol, Pascal e C, por exemplo;
- Definição de visões - Com a SQL DDL é possível definir visões;
- Autorização - A SQL DDL possui comandos que permitem ou não o acesso a relações e visões;
- Integridade - A SQL DDL possui comandos que criam regras que os dados devem obedecer para serem armazenados no banco;
- Controle de transações - Possui comando que especificam como será feita a inicialização e finalização de transações.
Exercício
Conforme os conceitos estudados até agora, um comando do SQL que faz a inserção de um novo dado em uma tabela qualquer, deve ser classificado como:
DML( ) ou DDL( ) ?
Deixe suas respostas nos comentários. Obrigado!
Fonte: Comunidade CDTC
quarta-feira, 11 de julho de 2012
Resolver Pastas ocultas no pendrive
Primeiro passo, manualmente, vá até
Iniciar>Executar em seguida digite o comando CMD
que irá abrir a famosa tela preta. Com muita atenção você vai ver
qual a letra de sua unidade (pen drive), e usaremos aqui a letra E:
Digite E: e tecle
Enter> e repare que agora mudou o local onde você
está acessando.
Agora sim você vai digitar o
seguinte comando exatamente como está aqui mostrado, attrib –h
–s /d
/s
É normal que os dispositivos de
maior quantidade de armazenamento de 8GB, 16GB e assim por diante,
demorem a verificar pois pode conter muitas pastas etc.
Assim que terminar o
cursor irá ficar piscando como no modo inicial E:
Então é só digitar exit.
Agora vá em seu pendrive e pronto.
quinta-feira, 5 de julho de 2012
Corinthians o Poderoso Timão!!!
Campeão da Libertadores 2012!
Agora seus torcedores não perdem a oportunidade...
Parabéns ao Corinthians e sua Fiel Torcida!!!
Título do Corinthians é tema mais discutido da web
Mal o árbitro Wilmar Roldán apitou o fim do jogo entre Corinthians e Boca Juniors no Pacaembu, em São Paulo, o título inédito da equipe paulista tornou-se o tema mais discutido da internet no Brasil e um dos mais relevantes no mundo.
Nos trending topics do Brasil, nove entre os dez termos listados pelo Twitter faziam alusão ao jogo vencido pela equipe paulista por 2x0. O tópico mais citado era “Sheike”, seguido por #vaicurinthia e #chupaboca. Na Argentina, no entanto, a finalíssima da Libertadores não foi suficiente para levar qualquer termo relacionado ao jogo ao topo dos tópicos do Twitter. Logo após o fim da partida, a hashtag mais popular era “#LaVidaEsEsoQuePasaMientras”.
Em todo o mundo, o tópico mais importante era #Happy4thjuly, uma alusão ao dia da independência americana. A tag acabou “adotada” por corinthianos para falar de sua própria independência, uma referência à “libertação” da pressão e das chacotas por nunca ter vencido uma Libertadores enquanto seus rivais diretos (São Paulo, Santos e Palmeiras) já o fizeram.
No Facebook, onde não é possível medir a popularidade de um termo, é possível registrar uma enxurrada de posts comemorando o título inédito.
Já no Instagram, fotos de torcedores que fotografaram o Pacaembu ou as casas e bares onde torceram na noite desta quarta-feira ascenderam para as listas de imagens mais populares da rede social.
Fonte: aqui.
quarta-feira, 4 de julho de 2012
Marinha usará Linux para controlar helicópteros não tripulados
A marinha dos Estados Unidos decidiu trocar o sistema operacional que controla seus aviões e helicópteros não tripulados com o objetivo de evitar ataques de software maliciosos que poderiam acessar os sistemas destes drones, obter dados sigilosos ou até mesmo mudar funções destas máquinas.
O primeiro helicóptero autônomo a usar Linux é o Northrop Grumman MQ-8 Fire Scout. Este modelo consegue decolar e pousar na posição vertical de forma totalmente autônoma. Além disso, ele funciona durante seis horas com apenas uma recarga do tanque de gás, consegue carregar cerca de 270 quilos de carga, ultrapassar a velocidade de 150 quilômetros por hora e atingir a altura de seis quilômetros, de acordo com as especificações divulgadas no site da fabricante.
O MQ-8 Fire Scout pode ser usado, por exemplo, para pousar em grandes aviões de guerra e terrenos impróprios para seres humanos, como na proximidade de um vulcão ou numa região contamina por radioatividade, por exemplo. Buscas por traficantes de drogas em regiões da América Latina serviram de testes de precisão da aeronave, embora o governo americano não tenha divulgado exatamente que missões essas máquinas cumpriram no combate ao tráfico.
O custo de transição do antigo sistema operacional para o Linux será de aproximadamente 28 milhões de dólares, segundo o contrato da marinha divulgado no site colaborativo Defense Professionals. Além disso, o site inglês especializado em tecnologia The Register afirma que a marinha americana planeja comprar 168 helicópteros autônomos do mesmo modelo da fabricante privada que a desenvolveu.
O exército americano disse ao The Register que é necessário aprender com os erros de outros sistemas operacionais, como o Windows, e que há uma forte tendência em equipar com Linux também outros modelos de aviões não tripulados.
A alteração de sistema operacional pode estar relacionada também às ameaças de outros governos. Recentemente, a emissora de TV estatal iraniana PressTV divulgou que militares do país conseguiram burlar e controlar um drone americano modelo RQ-170 Sentinel, que foi capturado em dezembro de 2011.
O general Amir Ali Hadjizadeh, comandante das forças aéreas e espaciais dos Guardiões da Revolução Islâmica (divisão das forças armadas do Irã), afirma que o conhecimento adquirido pelos militares após o estudo da tecnologia deste drone permitiria até mesmo replicar o modelo da aeronave.
Ainda de acordo com os militares iranianos, este avião não tripulado seria o mesmo que espionou o terrorista Osama Bin Laden duas semanas antes de ele morrer.
Após as declarações, o senador americano Joe Lieberman, responsável pelo comitê de segurança nacional, disse durante uma entrevista ao canal televisivo Fox News que o Irã está na defensiva e que as citações sobre o abatimento do drone é uma provocação.
Fonte: aqui.
União Europeia rejeita lei antipirataria ACTA
O Parlamento Europeu rejeitou, por 478 contra 39 votos, o projeto de lei chamado ACTA (Anti-Counterfeiting Trade Agreement), que visava coibir o compartilhamento de arquivos protegidos por direitos autorais na região. Outros 165 parlamentares se abstiveram da votação.
Para o diretor da organização Open Rights Group, Jim Killock, a decisão foi uma vitória para a democracia. “Isso é uma resposta para cada cidadão europeu que exigiu seus direitos. O projeto deve ser abandonado agora”, disse ele ao jornal britânico The Daily Telegraph.
Elaborada a partir de um plano secreto, a ACTA era considerada ainda mais rígida que suas equivalentes americanas Sopa e Pipa, também não aprovadas.
Além de coibir o compartilhamento online, a ACTA visava combater a pirataria física feita por meio de DVDs, CDs, computadores, entre outros.
Entre outros, o projeto pretendia obrigar provedores a informar aos governos os logs de acesso de seus clientes, além de autorizar a busca de arquivos piratas em notebooks e iPods em zonas de fronteiras.
Fonte: aqui.
Google encerra iGoogle e outros 4 serviços
O Google anunciou ontem que irá encerrar as atividades de cinco serviços da empresa. São eles o iGoogle, o Google Mini, o Google Vídeo, o Symbian Search App e o Google Talk Chatback, que permite a websites incorporarem uma janela do mensageiro da empresa.
O fechamento dos serviços faz parte da estratégia da empresa adotada com a volta de Larry Page à liderança da companhia. Page quer o Google mais focado no desenvolvimento de tecnologias significativas (como o Glass Project) em vez de pequenos serviços.
“Nós temos que focar ou terminaremos sem atingir o impacto que pretendemos”, afirmou o gerente-geral do Google, Matt Eichner, no blog da empresa.
Em partes, alguns dos serviços já haviam caído no ostracismo. Ultrapassado pelo YouTube, desde 2009 o Google Vídeo não aceitava mais o upload de vídeos.
Já o iGoogle, que permite ao usuário personalizar sua página de buscas com informações em tempo real e outros serviços, sairá do ar em novembro de 2013. O Google deve compensar sua falta com aprimoramentos para o Chrome e para o Android.
Já o Google Talk Chatback é um widget que permitia a qualquer site incorporar uma janela integrada com o Gtalk. Por sua vez, o serviço concorrente do MSN continuará operando normalmente.
Segundo o Google, o Google Mini pode ser substituído por outros produtos, como o Google Site Search. Já o Symbian Search App deverá dar lugar a outras inovações.
A série de encerramento de serviços do Google se iniciou em novembro do ano passado. Desde então, mais de 30 serviços já foram encerrados. Entre eles, estão o Wave, o Buzz, o Friend Connect, o Labs, o Desktop etc.
Fonte: aqui.
quinta-feira, 28 de junho de 2012
Google divulga números do navegador Chrome e do Gmail
Além de novidades em serviços e apps, o Google também anunciou números durante suas conferências desta quinta-feira (28) no Google I/O 2012. A empresa revelou as estatísticas do seu navegador de Internet, o Chrome, e do seu cliente de e-mail, o Gmail. O primeiro chegou a 310 milhões de usuários, enquanto o segundo já soma 450 milhões.
O crescimento do Chrome é bem impressionante: o número de computadores com o browser praticamente dobrou se comparado ao ano passado, quando ele estava em “apenas” 160 milhões de máquinas. Além disso, de acordo com os analistas da equipe de Mountain View, basicamente, os usuários baixam 1 TB de dados por dia, além de digitarem 60 bilhões de palavras.
O Gmail também teve uma subida nos números em pouco tempo. Em janeiro, por exemplo, o Google anunciou que 350 milhões de pessoas utilizavam seu cliente de e-mail. Agora, alguns meses depois, já são 425 milhões. O Gmail é um dos serviços de correio eletrônico mais populares do momento e vem se tornando ainda mais popular graças aos apps para dispositivos móveis e as constantes mudanças para torná-lo ainda melhor.
Google anuncia que 'óculos do futuro' serão vendidos por US$ 1,5 mil
Preço vale apenas para participantes que comprarem produto em evento.
Segundo companhia, óculos chegarão ao mercado mundial em 2013.
O Google anunciou na quarta-feira (27), durante o evento Google I/O, que seus óculos de realidade aumentada, conhecidos como Project Glasses, chegarão ao mercado em 2013. Para os participantes do evento, que acontece em San Francisco (EUA), o produto poderá ser adquirido por US$ 1,5 mil e será entregue no início do ano que vem. A companhia não revelou o valor do dispositivo para o consumidor final.
O Google mostrou detalhes dos seus óculos “do futuro”, que agora ganharam o nome oficial de Google Glass. Sergey Brin, cofundador da empresa, subiu ao palco do evento para apresentar os óculos, que têm câmera, microfone, alto falantes, processador poderoso e memória. O protótipo ainda conta com conexão à internet para transferência de dados, mas o Google não especificou quais redes os óculos terão acesso.
O projeto está em desenvolvimento há mais de dois anos e terá software e programas criados exclusivamente para ele. Brin mostrou o dispositivo nas cores preta, branca e azul. Conforme a demonstração, a tela dos óculos fica acima do olho justamente para que ela não atrapalhe a visão do usuário. Segundo a companhia, o objetivo é que a tecnologia seja usada naturalmente. Na apresentação, Brin mostrou que os óculos são muito leves para que seu uso seja confortável, além de ser discreto no rosto do usuário. A empresa afirma que ele é mais leve que muitos óculos de sol.
De acordo com o Google, o objetivo dos óculos é fornecer acesso rápido ao conteúdo digital e às informações, além de facilitar a comunicação por meio de imagens. “Você pode capturar momentos da sua vida mais rapidamente”, disse Brin. A companhia quer que, quando o usuário precise de alguma informação, ele não precise tirar o telefone do bolso. Segundo o Google, perguntar aos óculos é mais fácil e rápido.
Com a câmera, é possível fazer vídeos e fotos em primeira pessoa, mostrando o ponto de vista do usuário. Na demonstração, o Google mostrou paraquedistas saltando de um avião na cidade de San Francisco e usando o recurso “Hangouts”, que transmite conversas ao vivo e em vídeo pela internet. Com os óculos, os paraquedistas conseguiram mostrar o ponto de vista deles a partir do salto. “Você pode mostrar suas atividades de um ponto de vista inédito e divulgar ao vivo pela internet”, acrescentou o executivo.
Fonte: aqui.
Guerra contra Google está apenas no começo, diz advogado de Xuxa
São Paulo – Após sofrer a primeira derrota no Superior Tribunal de Justiça (STJ), o advogado da apresentadora Xuxa, Maurício Lopes, afirmou que o embate contra o Google está apenas começando.
“Esse processo vai longe. É possível que daqui a dez anos a gente ainda esteja falando dessa história”, afirmou Lopes ao site da revista Veja.
De acordo com o advogado, o julgamento ainda está em sua fase de perícia. Ele acredita que a decisão pode ser alterada quando a Justiça analisar o mérito da questão (uma das bases para a decisão judicial).
Xuxa protocolou uma ação contra o Google em outubro de 2010. No processo, ela pede que o Google não entregue nenhum link a partir de buscas combinando seu nome e as palavras “pornografia” e “pedofilia”.
Essa pesquisa tem como resultado links para o filme "Amor Estranho Amor", filmado em 1979. Nele, a então modelo aparece em cenas eróticas com um garoto de 12 anos.
Segundo Lopes, o Google afirma que não possui meios para filtrar as imagens de Xuxa nua. Porém ele ressalva que o perito indicado pela Justiça do Rio para avaliar o caso ainda nem começou seu trabalho.
Além dele, a apresentadora também conta com o embasamento da empresa Coppetec-UFRJ, contratada por ela para elaborar laudos técnicos.
Após os laudos, haverá uma sentença em primeiro grau, da Justiça do Rio. Se uma das partes ou ambas recorrerem, haverá então uma decisão em segundo grau, contra a qual poderá haver recurso junto ao STJ ou ao STF (Supremo Tribunal Federal).
De acordo com a decisão do STJ, o Google não deve suprimir os resultados, pois não é o responsável pela publicação dos conteúdos, mas apenas uma ferramenta de pesquisa.
Fonte: aqui.
E então amigos leitores, como vocês acham que irá terminar essa luta?
Assinar:
Postagens (Atom)













