Você está na página 1de 7

UM SGDB: SISTEMAS DE GERENCIAMENTO DE DADOS.

Mtodos de acesso DDL (Data Definition Language) especificao do esquema do BD (dados e seus tipos de dados, ndices, ...) DML (Data Manipulation Language) manipulao de dados (I, A, E, C) processamento eficaz de consultas considera relacionamentos exemplo: buscar professores que lecionam em turmas lotadas... CREATE TABLE CLIENTE( ID_CLIENTE INTEGER NOT NULL, VARCHAR(50), NUMBER(2),

NOME_CLIENTE IDADE_CLIENTE CPF TELEFONE EMAIL

NUMBER(11), NUMBER(13), VARCHAR(100), CLIENTE_PK PRIMARY KEY(ID_CLIENTE));

CONSTRAINT

INSERT INTO CLIENTE( ID_CLIENTE, NOME_CLIENTE, IDADE_CLIENTE, CPF, TELEFONE, EMAIL) VALUES( 12341, 'Anne', 64, 22342390291, 6122349817, 'annelisse@banco.com' ) *SELECT *FROM CLIENTE; *SELECT ID_CLIENTE, NOME_CLIENTE FROM CLIENTE; *SELECT * FROM CLIENTE ORDER BY ID_CLIENTE;

*SELECT * FROM CLIENTE ORDER BY NOME_CLIENTE DESC; //Note que os nomes ficam em ordem inversa. //Utilizando operador de concatenao || para juntar campos texto. *SELECT ID_CLIENTE||' - '||NOME_CLIENTE FROM CLIENTE; //Usando a Clusula Where para definir critrios de seleo SELECT com Comparaes lgicas (=, >, <, >=, <=, <>) Onde: = -> Igual a > -> Maior que < -> Menor que <> ou != -> Diferente de >= -> Maior ou igual a <= -> menor ou igual a <=> -> Igual para NULL *SELECT NOME_CLIENTE,IDADE_CLIENTE FROM CLIENTE WHERE IDADE_CLIENTE > 20; CREATE TABLE ENDERECO ( ID_ENDERECO NUMBER (5) NOT NULL ,

ID_CLIENTE NUMBER (5) NOT NULL, ENDERECO VARCHAR2 (60), BAIRRO UF VARCHAR2 (30), VARCHAR2 (02), ENDERECO_PK PRIMARY KEY (ID_ENDERECO), FOREIGN KEY (ID_CLIENTE)

CONSTRAINT

CONSTRAINT ENDERECO_FK REFERENCES CLIENTE (ID_CLIENTE) ) INSERT INTO ENDERECO ( ID_ENDERECO, ID_CLIENTE,

ENDERECO, BAIRRO, UF ) VALUES ( 4, 12341, 'SQS 113 Bl. B', 'Asa sul', 'DF' ) describe ENDERECO; *SELECT *FROM ENDERECO; *SELECT ID_CLIENTE, ENDERECO FROM ENDERECO; *SELECT CLIENTE.NOME_CLIENTE,ENDERECO.ENDERECO FROM ENDERECO , CLIENTE WHERE CLIENTE.ID_CLIENTE = ENDERECO.ID_CLIENTE AND CLIENTE.ID_CLIENTE = 12345; *SELECT DISTINCT UF FROM ENDERECO; //Utilizando a Clusula DISTINCT com vrias colunas: *SELECT DISTINCT UF, ENDERECO FROM ENDERECO; CREATE TABLE CARRO_CLINTE( CHASSI ID_CLIENTE FABRICANTE MODELO ANO COR N_PORTAS VALOR NUMBER(10) NOT NULL, NUMBER(5) NOT NULL, VARCHAR(100), VARCHAR(50), NUMBER(4), VARCHAR(10), NUMBER(2), NUMBER(10),

CONSTRAINT

CARRO_CIENTE_PK PRIMARY KEY (CHASSI), FOREIGN KEY (ID_CLIENTE)

CONSTRAINT CARRO_CLIENTE_FK REFERENCES CLIENTE (ID_CLIENTE) ) INSERT INTO CARRO_CLINTE(

CHASSI, ID_CLIENTE, FABRICANTE, MODELO, ANO, COR, N_PORTAS, VALOR )VALUES( 123456, 12345, 'Volkswagen', 'Novo Gol', 2008, 'Preta', 4, 32000) INSERT INTO CARRO_CLINTE( CHASSI, ID_CLIENTE, FABRICANTE, MODELO, ANO, COR, N_PORTAS, VALOR )VALUES( 234567, 12344, 'GM', 'Celta', 2006, 'Vermelha', 2, 23500) INSERT INTO CARRO_CLINTE( CHASSI, ID_CLIENTE, FABRICANTE, MODELO, ANO, COR, N_PORTAS, VALOR )VALUES( 345678, 12343, 'Fiat', 'Punto', 2007, 'Amarela', 2, 39000) INSERT INTO CARRO_CLINTE( CHASSI, ID_CLIENTE, FABRICANTE, MODELO, ANO, COR, N_PORTAS, VALOR )VALUES( 456789, 12342, 'Honda', 'Civic', 2008, 'Prata', 4, 59000) INSERT INTO CARRO_CLINTE( CHASSI, ID_CLIENTE, FABRICANTE, MODELO, ANO, COR, N_PORTAS, VALOR )VALUES( 567890, 2341, 'Renault', 'Mgane', 2007, 'Branca', 4, 65000) *SELECT *FROM CARRO_CLINTE; *SELECT ID_CLIENTE, MODELO FROM CARRO_CLINTE; *SELECT CLIENTE.NOME_CLIENTE,CARRO_CLINTE.MODELO,CARRO_CLINTE.CHASSI

FROM CARRO_CLINTE, CLIENTE WHERE CLIENTE.ID_CLIENTE = CARRO_CLINTE.ID_CLIENTE AND CLIENTE.ID_CLIENTE = 12343; *SELECT MODELO, ANO FROM CARRO_CLINTE WHERE ANO > 2006 AND ANO < 2008; // COM OPERADORES LOGICOS *SELECT CHASSI,MODELO FROM CARRO_CLINTE WHERE CHASSI LIKE '2%'; //Buscou dados que contem o numero 2. *SELECT CHASSI,MODELO FROM CARRO_CLINTE WHERE MODELO LIKE '_e%'; //segunda letra que busca(celta). *RENAME nome_velho TO nome_novo

*DROP TABLE nome-da-tabela;


*CREATE VIEW {nome}d10emp AS SELECT {comando}empno, ename FROM emp WHERE deptno = 10;{CRIANDO VIEW} *INSERT INTO d10emp (empno, ename) VALUES (7999, 'JOO GOIABA');{INSERIR DADOS} Observao: Os dados do INSERT so armazenados na tabela EMP. *SELECT * FROM d10emp ORDER by ename;{RECUPERAR DADOS} *DROP VIEW nome_view;{REMOVER}
QUERY CONJUNTO DE DADOS DE QALQUER TIPO NO CGDB COMANDOS SQL:

finalidade dos exemplos abaixo demostrar como permitir que o usurio entre com os valores que possibilitem a execuo de um comando SQL. SQL> set verify on SQL> select id,last_name,salary 2 from s_emp 3 where dept_id=&numero_do_dept; Enter value for numero_do_dept: 31 old 3: where dept_id=&numero_do_dept new 3: where dept_id=31 ID LAST_NAME SALARY --------- ------------------------- --------3 Nagayama 1400 11 Magee 1400

CONSULTA COM VALOR CARACTER: SQL> select id,last_name,salary 2 from s_emp 3 where title ='&job_title'; {possibilitando que o usurio entre com o nome do title} Enter value for job_title: Stock Clerk ID LAST_NAME SALARY --------- ------------------------- --------16 Maduro 1400 17 Smith 940 18 Nozaki 1200 19 Patel 795 20 Newman 750 21 Markarian 850 10 rows selected. nome da coluna e com a prpria condio de pesquisa que ser estabelecida na clusula WHERE. SQL> select id,&nome_coluna 2 from s_emp 3 where &condio; Enter value for nome_coluna: LAST_NAME Enter value for condio: SALARY > 100 ID LAST_NAME --------- ------------------------1 Velasquez 2 Ngao 3 Nagayama 4 Quick-To-See 5 Ropeburn 6 Urguhart 7 Menchu 8 Biri GERAR UM SCRIPT SET ECHO OFF ACCEPT V_NAME PROMPT 'D O NOME DO DEPARTAMENTO:' SELECT DPT.NAME, REG.ID, REG.NAME " NOME DA REGIO" FROM S_DEPT DPT, S_REGION REG {veja a criao de apelidos} WHERE DPT.REGION_ID = REG.ID {veja o join} AND UPPER(DPT.NAME) LIKE UPPER('%&V_NAME%') {valor digitado } / SET ECHO ON

SCRIPT : SET ECHO ON SQL> @TEST.SQL {NOME DO ARQUIVO} SQL> SET ECHO OFF D O NOME DO DEPARTAMENTO:sales old 4: AND UPPER(DPT.NAME) LIKE UPPER('%&V_NAME%') new 4: AND UPPER(DPT.NAME) LIKE UPPER('%sales%') NAME ID NOME DA REGIO ------------------------- --------- -------------------------------------------Sales 1 North America Sales 2 South America

Você também pode gostar