Você está na página 1de 9

Resumo de SQL - Srie Ramalho

($) (Cap - 1):


DataBase Objects( Objetos de Bancos de Dados)
1) Tabelas: So o corao do BD. Nelas que os dados ficam armazenados. toda tabela
possui um nome prprio. contituida por Colunas(Campos) e Linhas(Registros).
2) Sinminmos: uma alias(apelido) para uma tabela, viso ou unidado de programa. a
utilizaco se da quando se quer esconder o verdadeiro local de uma tabela ou seu
proprietrio.
3) SnapShots: uma copia de uma parte ou de toda uma tabela. a tabela de origem a
Master Table. Existem dois tipos: Read-Only -> conhecido como replicao pubhish-andsubscribe e Updatable -> conhecido como replicao update-anywhere. Read-Only no
permite alteraes na table enquanto que o updatble permite alterao na copia local e
periodicamente atualiza a Master Table.
4) User: Qualquer passoa que acessa um BD Oracle um usurio. Cada usurio possui um
nome e senha. Quando se instala o Oracle se cadastrado algnuns Users e senhas para
acessar num primeiro instante.
5) Roles: Um 'Role' ou papel um metodo de distribuir privilgios para se trabalhar comum
BD. Quem cria um Objeto de BD pode distribuir os privilgios ou os privilgios podem ser
atribuidos para um personagem.
6) Indices: os indices so componentes dos BD's para agilizar o acesso a dados. funcionam
como indices de livros para procurar por algum assunto,no caso de tabela.
7) Vises: um atabela virtual cujo conteudo foi definido por uma consulta(Query) ao BD.
A viso no a tabela fsica, mas um conjnto de intrues que retorna um conjunto de
dados.
8) Store Procedures: os dados de um BD podem ser acessados somente atravs da execuo
de comandos da linguagem Transact-SQL. o desenvolvedor pode optar por criar um
programa SQL que armazenado localmente e enviado para o servidor para ser
executado,ou ento criar e manter os programa sno proprio servidor em Store Procedures,
que podem ser acionadas por um programa na maquina do cliente. Pode aceitar
paranmetros para serem executadas. Pode ser usada por qualquer aplicao que acesse BD.
Criadas por (Tanscat-SQL Create Procedure) e modificadas por (Alter Procedure).
9) Triggers: Triggers so Store Procedures armazenadas no BD que so executadas quando
uma tabela modificada. Um trigger executada em resposta a algum evento e nao por

chamada feita pelo usurio, como ew o caso da Store Procedure. Um Trigger ew uma Store
Procedure que ew excutada quando um dado da tabela ew alterado em decorrencia da
execucao de comando SQL do tipo Insert, Update, Delete. ela funciona por ex.: para
atualzar Bd's, quando se atualiza uma linha numa Table A ela atualiza tb essas info's em
uma Tbale B.
($) (Cap - 2 - Viso Geral):
SubDivises da linguagem SQL:
1) DDL(Data Definition Language): parte da SQL para criao de objetos, como tabelas,
indices, vises etc. entre os comandos cita-se:
Create Table, Create View, Create Index
2) DML( Data Manipulation Language): paret da SQL para execuo de consultas e
alteraes nos dados. entre os comandos cita-se:
Select, Update, Delete
3) DCL(Data Control Language): estes comandos esto relacionados basicamente com a
segurana do BD. executando tarefas de atribuio de privilegios par aos usurios
acessarem determinados objetos do BD. os comandos so:
Grant, Revoke
($) (DATA TYPES): Serve para definir os tipos de dados dos campos, tipo texto(text),
numerico(num), datas(date)
|
|Texto
|
|Char ou caractere --> cadeia ou string de caracteres que devem ser envolvidas por aspas
|
|
|Numerico
|
|Dec ou Decimal --> numero decimal definido por duas partes.precisao e escala. precisao
indica a |quantidade de digitos significantes. escala indica quantas casas decimais o nmero
possue.
|
|Numeric --> indentico Dec, so que o numero maximo de digitos nao pode ultarpassar a
precisao |especificada.
|
|Int --> numero sem parte decimal
|

|Smallint --> identico ao Int, so que com limite de tamanho


|
|Float --> numero de ponto flutuante com base exponencial 10
|
|Real --> identico ao float exeto que nao ew usado um argumento para especificar o
tamanho
|
|Double ou Double precision --> identico ao Real, so que com precisao.
|
($) (Cap - 3 - SQL Essencial):
|
|COMANDOS FUNES
|
|Select | Sum()
|Insert | AVG()
|Delete | MAX()
|UPDate | MIN()
|Create Table | Count()
|Create View | SysDate()
|Create Procedure |
|
($) Tipos de Declaraes SQL: as delaracoes SQL sao divididas em duas categorias
principais: DDL e DML, de acordo com sua funcionalidade.
(%) DDL: a DDL(Data Definition Language), ou linguagem de definicao de dados ew a
parte do SQL usada para definir dados e objetos de um BD.quando esses comnados sao
usados sao feitas entradas
no dicionario do SQL Server 7. Dentro dessas categorias podemos citar:
|
|COMANDO FUNO
|
|Create Table ------------------- Cria uma tabela
|Create Index ------------------- Cria um indice
|Alter Table ------------------- altera ou insere uma coluna em uma tabela
|Drop Table ------------------- elimina uma tabela do BD
|Drop Index ------------------- elimina um indice
|Grant ------------------- concede privilegios de acsso para um usurio
|
(%) DML: a DML(Data Manipulation language),ou linguagem de manipulacao de dados,
a parte do SQL usada para recuperacao ou alteracao das tabelas. Veja alguns dos principais
comandos:

|
|COMANDO FUNO
|
|Select ------------------------- o principal comando da linguagem. com ele o usurio
recupera | dados de uma tabela ou viso
|Insert ------------------------- inserre uma linha na tabela
|Delete ------------------------- exclui linhas da tabela
|UpDate ------------------------- aletra o conteudo de colunas(campos) da tabela
|Commit ------------------------- garav ni disco as alteracoes que foram feitas
|RollBack ----------------------- desfaz as alteracoes feitas apos o ultimo Commit
|
(%) Data Types: os seus Data Types:
|
|DATA TYPE DESCRIO
|
|Char ------------------------ dado do tipo caracter, com tamanho fixo de at 254 caracteres;
|Date ------------------------ armazena apenas datas;
|DateTime ou Timestamp ------- se a parte de entrada do argumento for omitida, o SQLBase
assume o | padrao 0, que converte para a data 30/12/1999 e 12:00am;
|Decimal ou Dec -------------- suporta at 15 digitos (-999999999999999 at
+999999999999999). se | nao for especificado assume precisao 5 e escala 0;
|Double Precsion ------------- tipo de dado numerico de ponto flutuante comprecisao dupla;
|Float ----------------------- se a precisao for especificada entre 1 e 21, o data type tera |
precisao simples. entre 22 e 53 tera precisao dupla;
|Integer ou INT -------------- um dado do tipo INTEGER pode ter at 10 digitos de precisao |
(-2147483648 ate +2147483648);
|Long VarChar ---------------- armazena caracetres ou objetos binarios. ew equivalente a um
data | type do tipo Blod
|Number ---------------------- um superset dos demais data types. suporta precisao de at 22
| digitos.
|Real ------------------------ tipo de dado numerico de ponto flutuante e precisao simples;
|Time ------------------------ Armazena apenas horas;
|Smallint -------------------- esta data type nao possui digitos fracionarios. os digitos a
| direita do ponto decimal sao truncados. pode ter at 5 digitos de | precisao (-32768 at
+32768)
|Varchar --------------------- dado do tipo caracter com tamanho fixo de at 254 caracteres.
|
($) Expresses e Operadores: os operadores atuam sobre operandos, ou seja, sobre os
elementos que serao analisados pelos operadores. os operadores unarios (unary), que atuam
sobre um unico operando, e os binarios (binary), que atuam sobre dois ou mais aperandos.
($) Precedencia de Operadores: quando um tipo de operador esta presente em uma
expressao, eles sao avaliados sobre por uma ordem de precedenciadescrita na lista a seguir:

|
|+(positivo), -(negativo), ~(bitwise NOT)
|*(multiplicacao), /(divisao), %(modulo)
|+(ADD), (+concatenacao), -(subtracao)
|=,>,<,>=,<=,<>,!=,!>,!< (comparacao)
|^(Bitwise Exclusive OR), &(Bitwise AND), |(Bitwise OR)
|NOT
|AND
|All, ANY, BETWEEN, IN, LIKE, OR, SOME
|= (assignment)
|
(*) Tipos de operadores aceitos no SQLBase:
|
|ARITMTICO
|
|multiplicacao --------------- *
|Divisao --------------------- /
|Subtracao ------------------- |Adicao ---------------------- +
|modulo ---------------------- %
|
|
|CARACTER
|
|cancatenacao --------------- ||
|
|
| COMPARAO
|
|igualdade ------------------ =
|desigualdade --------------- <>
|Maior que ------------------ >
|Menor que ------------------ <
|Maior ou igual a ----------- >=
|Menor ou igual a ----------- <=
|Nao menor que -------------- !<
|Nao maior que -------------- !>
|Nao igual a ---------------- !=
|
|
|LGICOS
|
|Not ----------------------- inverte o valor booleano;
|And ----------------------- verdadeira se ambas as expressoes forem verdadeiras;
|Or ------------------------ verdadeiro se q expresao for verdadeira;

|Between ------------------- verdadeiro se o operador estiver dentro da faixa;


|Like ---------------------- verdadeiro se o operador encontra um padrao;
|In ------------------------ verdadeiro se qualquer item for verdadeiro;
|Some ---------------------- verdadeiro se algum item for verdadeiro;
|Any ----------------------- verdadeiro se algum item for verdadeiro;
|All ----------------------- verdadeiro se todo o conjunto for verdadeiro.
|
|
|BITWISE
|
|&(Bitwise And) ------------ realiza operacoes de manipulacao de bits entre duas expressoes
||(Bitwise Or) inteiras.
|^(Bitwise Exclusive Or)
|
|
|UNRIOS
|
|+(positivo) --------------- valor numerico positivo;
|-(negativo) --------------- valor numerico e negativo;
|~(Bitwise)----------------- retorna o complemento do numero.
|
($) O camando Select: esse comando ew a essencia d alinguagem SQL. Sua finalidade ew
encontrar, recuperar, e mostrar dados que satisfacam a consulta do usurio. ele especifica as
seguintes informacoes:
(*) As tabelas ou visoes a serem procuradas no BD
(*) As condicoes de procura
(*) A sequencia na qual os dados serao mostrados
Vejamos a sintaxe bsica:
Select [*] [ALL] [name =] expression
expression [AS name]]
From Table name [correlation name]
View name
Where search condition
[Group By integer constant]
column name]
[Having Search Condition]
[Order By integer constant [ASC] [DESC]]
column name ]
|
|ARGUMENTOS
|
|* ------------------------- seleciona todas as colunas da tabela

|ALL ----------------------- o padrao para um comando SELECT que ew recuprerar todas as


linhas
|DISTINCT ------------------ nao mostra linhas duplicadas
|EXPRESSION ---------------- uma lista de selecao contendo expressoes separadas por
virgulas. uma | expressao pode ser um nome de coluna, uma constante, uma variavel |
assinalada, resultado de uma funcao, uma palavra-chave do sistema.
|FROM ---------------------- contem os nomes das tabelas ou visoes a partir das quais um
conjunto | de linhas resultado
|CORRELATION name ---------- um nome relacionado pode ser usado para designar a
tabela ou visao | imediatamente precedente
|WHERE search conditon ----- especifica uma condicao de procura para as tabelas bsicas
ou | visoes. a condicao nao pode conter funcoes agregadas.
|GROUP BY integer constant/ esta clausula agrupa as linhas resultantes da consulta, de
acordo |column name comos nomes de colunas da clausula. se a coluna pela qual o |
agrupamento ocorre ew uma expressao, voce deve especificar um numero | que indica sua
posicao relativa na lista de selecao, mas apenas se a | expressao tem mais de uma coluna.
|HAVING search condition --- esta clausula permite estabelecer uma condicao de procura
por um | grupo de linhas resultantes de um GROUP BY ou colunas agrupadas.
|ORDER BY integer constant/ especifica a ordem das linhas em uma tabela de resultados.
as linhas |column name podem ser ordenadas por mais de uma coluna. se a coluna de
ordenacao | derivada de um afuncao ou expressao aritmetica, a coluna deve ser |
especificada por um inteiro que signifique o numero relativo da sua | posicao no comando
SELECT. cada nome de coluna ou numero pode ser | opcionalmente seguido de ASC ou
DESC indicando ordenacao Ascendente | ou Descendente
|UNION --------------------- esta clausula agrega o resultado de dois ou mais comandos
SELECT.
|Select command UNION [ALL] linhas duplicadas sao eliminadas.
|Select command [ORDER BY
|integer constant [ASC] [DESC]
|ALL- ---------------------- se esta clausula ew especificada, linhas duplicadas nao sao |
eliminadas.
|ORDER BY ------------------ esta clausula oredena o conjunto de linhas do resultado final, |
provenientes da uniao de duas ou mais tabelas.
|
(*) Exemplos gerais do Select: Select nome da coluna From Noem_Da_Tabela.
(*) Selecionando Tudo: Select * From Nome_Da_Tabela
(*) Tratando de erros: Caso voce cometer errosde digitacao, apenas corriga os erros e
execute o comando novamente.
(*) Selecionando Colunas Deterninadas: Select Nome da coluna1, nome da coluna2, nome
da coluna_n ... From Nome_da_Tabela
(*)Where: Qualificando a Consulta: a calusula where permite voce criar filtros na consulta
para eliminar a quantidade de linhas retornadas
($) CREATE TABLE - criando uma Tabela: esse comando ter pro finalidade criar uma nova
tabela no BD, nao ha limites para a criacao de tabela, quer dizer que isso so vai depender do

BD que esta sendo usado, por exemplo o SQL Sever 7 permite at dois bilhoes de tabelas,
1024 colunas e o numero de registros e ilimitado.
()Comandos bsicos ca criacao de uma table:
Create Table ( [ [
($) Insert - Criando Contedo: esse comando insere uma linha na tabela, preenchendo as
colunas com valores especificos.nao ew necessario atribuir valores para todos os campos.
Sintaxe Bsica:
Insert [Into] {} { { [(column_list)] Values
( {Default | constant_expression }[....n] )
(%) Into ----------------------- indica o nome da tabela que receber os dados;
(%) column_list ---------------- ew uma lista de colunas que receberao os dados. devem ser
envolvidas por parentenses e limitadas por virgulas. no caso de os valores especificados por
VALUES nao estarem na mesma ordem das colunas, a opcao column_list deve ser usada
para
especificar que colunas receberao tais valores.
(%) Values --------------------- especifica a lista de valores que serao inseridos
(%) Default -------------------- atribui o valor-padrao para a coluna. se um valor-padrao nao
tiver sido definido, atribui nulo.
(%) Constant_Expressoin -------- ew um valor literal, expressao ou variavel.
1) Todas as vezes que for utilizar um SQL que possua condies de OR,
mais aconselhvel e mais rpido utilizar IN, como no exemplo:
AO INVS DE
Select * from projint where sit_projint = AI or sit_projint = EL
COLOQUE
Select * from projint where sit_projint IN (AI,EL);
2) Quando existem duas ou mais condies AND juntas, especifique primeiro sempre a que possui o
maior limite de ocorrncias
AO INVS DE
select count(*) from pessoa where sit_pessoa = 11 AND cod_munic > 1100155
COLOQUE
select count(*) from pessoa where cod_munic > 1100155 AND sit_pessoa = 11
3) Quando existem duas ou mais condies OR juntas, especifique primeiro sempre a que possui o
maior limite de ocorrncias
AO INVS DE
select count(*) from pessoa where cod_munic > 1100155 OR sit_pessoa = 11
COLOQUE
select count(*) from pessoa where sit_pessoa = 11 OR cod_munic > 1100155
4) Tenha cuidado com o sinal de <>
AO INVS DE
select count(*) from pessoawhere cod_munic < > 1100155

COLOQUE
select count(*) from pessoawhere cod_munic < 1100155 OR cod_munic > 1100155

Você também pode gostar