terça-feira, 26 de agosto de 2008

Atalhos de teclado windowS


ALT < - OU BACKSPACE - Voltar para a página anterior.


ALT Barra de espaço - Mostrar o menu do sistema para a janela ativa

ALT letra sublinhada em menu fechado - Mostrar o menu correspondente

ALT ENTER - Ver propriedades do item, arquivo


ALT ESC - Ciclar pelos arquivos na ordem em que foram abertos

ALT F4 - Fechar janela


ALT TAB - Alternar entre janelas abertas


CTRL durante arrasto - Copiar arquivos selecionados

CTRL SHIFT durante arrasto - Criar um link (atalho) para o arquivo selecionado

CTRL ESC - Abrir o menu Iniciar

CTRL F4 - Fechar documento corrente


CTRL F5 - Renovar a página da web atual, mesmo que o datador da versão atual e o da armazenada localmente sejam iguais.

CTRL SETA Direita - Mover cursor de texto para a próxima palavra
CTRL SETA Esquerda - Mover cursor de texto para a palavra anterior

CTRL SETA Abaixo - Mover cursor de texto para o próxima parágrafo

CTRL SETA Acima - Mover cursor de texto para o parágrafo anterior

CTRL SHIFT Setas - Marca bloco de texto

CTRL TAB ou F6 - Avançar entre quadros.

CTRL A - Selecionar tudo (Ctrl + T, para Windows em inglês)

CTRL C - Copiar para a área de transferência.

CTRL E - Abrir pesquisador na barra do explorer.

CTRL F - Localizar nessa página uma expressão escrita na janela.

CTRL H - Abrir histórico na barra do explorer.

CTRL I - Abrir favoritos na barra do explorer.

CTRL N - Abrir uma nova janela.

CTRL O ou CTRL L - Ir para um novo local.

CTRL O - Abrir item, arquivo. O mesmo que Enter


CTRL P - Imprimir a página atual ou o quadro ativo.

CTRL S - Salvar página atual.


CTRL V - Inserir o conteúdo na área de transferência no local selecionado.
CTRL W - Fechar a janela atual.

CTRL X - Recortar os itens selecionados e copiá-los na área de transferência.


CTRL Z - Desfazer a última ação


DELETE - Deletar, Apagar, Remover


SHIFT - DELETE - Apagar arquivo(s) (sem ir para a lixeira)

END - Mover para o fim de um documento.

ENTER - Ativar um link selecionado.

ESC - parar de fazer download de uma página.

F2 - Renomear um item ou arquivo selecionado

F3 - Buscar, procurar

F4 - Mostrar barra de endereço no Windows Explorer

F5 - Restaurar a janela ativa

F5 ou CTRL + R - No navegador, renovar a página da web atual somente se o datador da versão da web e a sua versão armazenada localmente forem diferentes.

F6 - Ciclar pelos itens de janela ou Desktop

F10 - Ativar barra de menu na janela ativa

HOME - Mover para o início de um documento.


LETRA SUBLINHADA em menu aberto ou comando - Executar o comando correspondente

PAGE DOWN - Rolar para o fim de um documento em incrementos menores.

PAGE UP - Rolar para o início de um documento em incrementos maiores.

SETA DIREITA - Abrir menu à direita ou sub-menu

SETA ESQUERDA - Abrir menu à esquerda ou fechar sub-menu

SETA PARA BAIXO - Rolar em direção ao fim do documento.

SETA PARA CIMA - Rolar em direção ao inicio de um documento.

SHIFT F10 - Exibir um menu de atalhos para um "link". Igual a clicar com o botão direito do mouse

SHIFT CTRL TAB - Retroceder entre quadros.


SHIFT SETAS - Selecionar texto num documento, itens do Desktop


SHIFT ao inserir um CD - Prevenir que execute o CD ou toque automaticamente


tecla Windows - Abrir o menu Iniciar


tecla Windows BREAK (Pause) - Mostrar as Propriedades do Sistema


tecla Windows M - Minimizar ou restaurar TODAS as janelas


tecla Windows E - Abrir o Windows Explorer


tecla Windows F - Buscar, procurar. O mesmo que F3


CTRL tecla Windows F - Procurar computadores


tecla Windows F1 - Abrir ajuda do Windows


tecla Windows R - Abrir o diálogo para Executar Programa


tecla Windows TAB - Alternar entre janelas abertas


tecla Windows U - Abrir o Gerente de Utilidades de Acessibilidade

quinta-feira, 21 de agosto de 2008

SQL

Disciplina: Fundamentos de Armazenamento e Manipulação de Dados
Professor: Andre Rodrigo Sanches


AULA: Linguagem SQL
A linguagem SQL é um padrão de linguagem de consulta comercial que usa uma combinação de construtores em Álgebra e Cálculo Relacional e possui as seguintes partes:

Linguagem de definição de dados (DDL);
Linguagem interativa de manipulação de dados (DML);
Incorporação DML (Embedded SQL);
Definição de Visões;
Autorização;
Integridade;
Controle de Transações.
O SQL permite que uma tabela (relação) tenha duas ou mais tuplas idênticas em todos os seus valores de atributos. Assim, em geral, uma relação SQL não é um conjunto de tuplas porque um conjunto não permite elementos idênticos. Ao invés disso, SQL é um multi-conjunto (algumas vezes chamado de bag) de tuplas.



Estrutura Básica
Uma expressão básica em SQL consiste em três cláusulas: SELECT, FROM e WHERE.

A cláusula SELECT corresponde à operação de projeção da álgebra relacional. É usada para relacionar os atributos desejados no resultado de uma consulta.

O resultado de uma consulta SQL é, obviamente, uma relação. SQL permite duplicidades nas tuplas de resposta. Quando desejamos forçar a eliminação de duplicidade, podemos inserir a palavra chave DISTINCT depois de SELECT.

Para especificar explicitamente que as duplicidades não serão eliminadas a SQL nos permite usar a palavra-chave ALL depois de select. Uma vez que a manutenção de duplicidade é padrão, o uso de all é facultativo.

O asterisco “*” pode ser usado para denotar “todos os atributos”.

A cláusula FROM corresponde à operação de produto cartesiano da álgebra relacional. Ela associa as relações que serão pesquisadas durante a avaliação de uma expressão.

A cláusula WHERE corresponde à seleção do predicado da álgebra relacional. Consiste em um predicado envolvendo atributos da relação que aparece na cláusula FROM.
A cláusula where pode conter expressões aritméticas envolvendo os operadores de comparação <, <=, >, >=, = e <>, e operandos constantes ou atributos das tuplas.
Em SQL, nessa cláusula podem-se usar os conectores lógicos AND, OR e NOT.
SQL possui o operador de comparação BETWEEN AND para simplificar a cláusula where que especifica que um valor pode ser menor ou igual a algum valor e maior ou igual a algum outro valor.

Uma consulta típica em SQL tem a forma:

select A1, A2, ..., An
from r1, r2, ..., rn
where P

Cada Ai representa um atributo e cada ri, uma relação. P é um predicado a ser satisfeito.

A SQL forma um produto cartesiano das relações indicadas na cláusula FROM, executa uma seleção em AR usando o predicado da cláusula WHERE e, então, projeta o resultado nos atributos da cláusula SELECT. Na prática, ela pode converter em outra expressão equivalente que seja mais eficiente no processamento.



A operação RENAME
SQL proporciona um mecanismo para renomear tanto atributos quanto relações, usando a cláusula AS, da seguinte forma:

nome_antigo as nome_novo

Pode aparecer tanto na cláusula SELECT quanto na cláusula FROM.

A cláusula AS é particularmente útil na definição de variável tupla (quando utilizada na cláusula FROM), como é feito no cálculo relacional. Uma variável tupla em SQL precisa estar associada a uma relação.



Operações com Strings
As operações em strings mais usadas são as checagens para verificação de coincidências de pares, utilizando o operador LIKE. Esses pares são identificados por meio do uso de dois caracteres especiais:

Porcentagem ( % ): compara qualquer string;
Sublinhado ( _ ): compara qualquer caractere.
Exemplos:

“_ _ _ _%” corresponde a qualquer string com pelo menos quatro caracteres.
“Uni%” corresponde a qualquer string que comece com “Uni”, como, “universo”, “universal”,
“universidade”.

Utilizando NOT LIKE pode-se pesquisar diferenças, ao invés de coincidências.

Obs.: Em geral, essas comparações são case sensitive (sensíveis a maiúsculas/minúsculas).



Ordenação e Apresentação de Tuplas
A linguagem de consulta SQL possui a cláusula ORDER BY que possibilita a apresentação dos resultados de uma consulta segundo uma determinada ordem de tuplas.

Para completar uma solicitação de ORDER BY a SQL precisa realizar uma SORT (intercalação/ordenação).

Uma intercalação com muitas tuplas pode ser custosa, portanto, só usar quando necessária.

Para listarmos uma relação em ordem ascendente usamos order by nome do campo ASC. Em ordem descendente, usamos ORDER BY nome_do_campo DESC. Por default (padrão), a relação dos itens é efetuada em ordem ascendente.



Operações com Conjuntos
SQL possui as operações de união (UNION), interseção (INTERSECT) e exceto (EXCEPT), que
correspondem às operações da álgebra relacional.

Contudo, existem várias restrições para o uso destes operadores e certos produtos não oferecem suporte para estas operações.



Funções Agregadas
Funções que tomam uma coleção (um conjunto ou subconjunto) de valores como entrada, retornando um único valor.

Funções ofertadas pela SQL:

SUM: soma/total;
AVG: média;
COUNT: contagem;
MIN: mínimo;
MAX: máximo;
A entrada para SUM e AVG precisa, obrigatoriamente, ser um conjunto de números, mas as demais operações não impõem esta restrição.

Exemplo:

select A1, A2, ..., An
from r1, r2, ..., rn
where P
group by A1;

Por vezes, precisamos aplicar uma função agregada não apenas a um conjunto de tuplas, mas também a um grupo de conjunto de tuplas. Isto é feito por meio da cláusula GROUP BY (onde os seus atributos são utilizados para formar os grupos).

Em outros casos, pode ser mais interessante definir condições e aplicá-las a grupos do que aplicá-las a tuplas. Isto é feito pela cláusula HAVING. Como os predicados da cláusula são aplicados após a formação dos grupos, funções agregadas podem ser usadas.

select A1, A2, ..., An
from r1, r2, ..., rn
where P
group by A1
having ;



Subconsultas Aninhadas
Uma expressão select-from-where aninhada dentro de outra consulta é considerada uma subconsulta.


Aplicações:

Membros de Conjuntos
Verificar se uma tupla é membro ou não de uma relação. O conectivo IN testa os membros de um conjunto, no qual este conjunto é a coleção de valores produzidos na cláusula SELECT.
select A1, A2, ..., An
from r1, r2, ..., rn
where P in (

select A1, A2, ..., An
from r1, r2, ..., rn
where P

);

Comparações de Conjuntos
Permite usar comparações do tipo > some (maior que ao menos uma), <= some, = some, etc...
ou > all (maior que todas), >= all, etc.
select A1, A2, ..., An
from r1, r2, ..., rn
where P > all (

select A1, A2, ..., An
from r1, r2, ..., rn
where P

);

Verificação de relações vazias
Pode-se testar se o resultado de uma subconsulta é vazio. O construtor EXISTS retorna o valor TRUE se o argumento da subconsulta é não-vazio.
select A1, A2, ..., An
from r1, r2, ..., rn
where P exists (

select A1, A2, ..., An
from r1, r2, ..., rn
where P

);



Visões
Uma visão é qualquer relação que não faz parte do modelo lógico do banco de dados, mas que é visível ao usuário, como uma relação virtual.

O conjunto de tuplas de uma relação visão é resultado de uma expressão de consulta que foi definido no momento de sua execução. Logo, se uma relação visão é computada e armazenada, esta pode tornar-se desatualizada se as relações usadas em sua geração sofrerem modificações.

Quando uma visão é definida, o sistema de banco de dados armazena sua definição ao invés do resultado da expressão SQL que a definiu. Sempre que a relação visão é usada, ela é sobreposta pela expressão da consulta armazenada, de maneira que, sempre que a consulta for solicitada, a relação visão será recomputada.

Alguns sistemas de banco de dados permitem que as relações de visões sejam materializadas, garantindo que se ocorrerem modificações nas relações reais usadas na definição da visão, também a visão será modificada. Contudo, esta abordagem pode incorrer em custos de armazenamento e atualizações de sistema.

As visões em SQL são geradas a partir do comando create view. A cláusula padrão é:

CREATE VIEW AS ;

Caso não necessitemos mais de uma dada visão, podemos eliminá-la por meio do comando:

DROP VIEW ;

Recado a turma!!!

Olaaaaaaaah

Assim pessoal, este blog foi criado na intenção de que todos fizessemos pesquisas na internet ou qualquer outro meio e postar aqui p/que compartilhemos essas informações em grupo.

terça-feira, 19 de agosto de 2008

curs de algoritmos

Curso de Algoritmos
Lição 2 - Comandos Básicos
O primeiro passo para a construção de um algoritmo é a declaração das variáveis que serão usadas nele. Quase todas as linguagens de programação exigem a declaração das variáveis de um programa. Em algumas isto é facultativo, mas é sempre uma boa técnica declarar variáveis, por vários motivos. Em um algoritmo isto não é necessário, pois na realidade o algoritmo não é uma linguagem de programação. Entretanto, para melhorar o entendimento do algoritmo e também para treinar as técnicas corretas, vamos assumir que a declaração de variáveis é "obrigatória".
Declarando Variáveis
Para declarar uma variável, colocamos, no início do algoritmo, a palavra chave declare e seu nome, seguido por dois pontos e seu tipo:
declare Salario : Numerico
declare Nome : Literal
declare AlunoAusente : Logico
Se tivermos mais de uma variável do mesmo tipo, podemos colocar todas, separadas por vírgulas, na mesma declaração:
declare Peso, Altura, Idade : Numerico
Como todas (ou quase todas) as linguagens de programação têm seus comandos e sintaxe baseados no Inglês, vamos eliminar nos comandos e variáveis de nossos exemplos os acentos, til, cedilha, etc. Os dados do tipo literal ou mensagens para o usuário, no entanto, serão escritos corretamente.
Colocando Valores nas Variáveis
Quando declaramos uma variável, criamos uma área de armazenamento para os dados, mas ela ainda está "sem valor". Para que ela seja útil, deve ter valores colocados por nós ou pelo usuário, através de digitação. Quando o próprio programa coloca dados nas variáveis faz o que se chama "atribuição de valores". Isto é feito pelo operador "<-" (uma seta apontando para a esquerda). Por exemplo:
Peso <- 78
Este comando atribui à variável Peso o valor 78. O valor que ela tinha anteriormente é "apagado", e não pode ser recuperado mais.
Nome <- "João da Silva"
Este comando atribui à variavel Nome o valor "João da Silva".
É importante lembrar que só se podem atribuir a uma variável valores do mesmo tipo da variável. Nos exemplos acima, a variável Salário é do tipo numérico; então, o seguinte comando seria inválido:
Salário <- "Insuficiente"
Uma variável, como o próprio nome está dizendo, pode ter seu conteúdo (seu valor) mudado quantas vezes for necessário durante um programa.
Exibindo o Valor de uma Variável
Um programa que faça o seu processamento e não tenha como mostrar seus resultados é inútil. Portanto, em algum ponto deve haver a exibição de valores, e todas as as linguagens de programação têm comandos para este fim. Nos algoritmos usamos o comando Escreva para isto. A sintaxe deste comando, isto é, o modo correto de ele ser usado, é a seguinte:
Escreva Expressão1, Expressão2, etc...
Expressão1, Expressão2, etc. são valores de qualquer tipo, separados por vírgula. Estes valores podem ser constantes ou variáveis. Caso a expressão seja uma variável, será exibido o seu valor. Veja os exemplos a seguir:

Comandos Resultado
(o que aparecerá na tela do computador)
Escreva "Alô, mundo!" Alô, mundo!
Escreva 20 20

declare Nome : Caracter
declare Idade : Numerico
Nome <- "José"
Idade <- 40
Escreva Nome José
Escreva "O meu nome é ", Nome O meu nome é José
Escreva "Tenho ",Idade," anos" Tenho 40 anos
Obtendo Dados para o Programa
Nem todos os dados que um programa manipula são gerados por ele. Um programa de caixa automático, por exemplo, tem que obter do usuário o número da conta, a senha, a opção de serviço desejada, etc. Assim, deve haver um meio para que sejam digitados (ou fornecidos de outra maneira) dados para uso do programa. Mais uma vez, todas as linguagens de programação permitem isto, e nos algoritmos usamos o comando Leia. A sintaxe deste comando é:
Leia
Substitua pel o nome da variável onde serão armazenados os dados digitados. Veja este exemplo:
Leia Nome
Leia Peso
Supondo que o usuário digitou "Paulo", teclou ENTER, digitou 80 e teclou ENTER novamente, o valor "Paulo" foi atribuído automaticamente à variável Nome, e o valor 80 à variável Peso.
Página Inicial Lição Anterior Próxima Lição