O documento discute diferentes tipos de atributos e relacionamentos entre entidades em um modelo de dados, incluindo atributos descritivos, nominativos e referenciais. Também descreve relacionamentos independentes, contingentes e mutuamente exclusivos entre entidades, além de classificar entidades como fortes, fracas e associativas.
1. Atributo
Atributo é tudo o que se pode relacionar como próprio da entidade (propriedade) que de
alguma maneira a qualifique e a distinga de outras, estes podem ser classificados e
identificados como:
ATRIBUTO DESCRITIVO: atributo que seja capaz de demonstrar, ou representar,
características formadoras, ou pertencentes, a um objeto. Ex: Data de nascimento, idade,
sexo.
ATRIBUTOS NOMINATIVOS: atributo que além de cumprirem a função de
descritivos, também servem como definidores de nomes ou rótulos de identificação aos
objetos aos quais pertencem. Ex: código do..., matrícula, número... .
ATRIBUTOS REFERENCIAIS: atributo que não pertencem propriamente a entidade
onde estão, mas fazem algum tipo de referência dessa entidade com outra entidade.
EXISTÊNCIA SIMULTÂNEA DE RELACIONAMENTOS
Segundo COUGO, 1997, podemos caracterizar, basicamente, três tipos de associações
existentes entre objetos:
Relacionamentos independentes.
Relacionamentos contingentes.
Relacionamentos mutuamente exclusivos.
RELACIONAMENTOS INDEPENDENTES
- A classe de relacionamentos que se enquadram como do tipo independente é
caracterizada por agrupar todo e qualquer relacionamento que possa vir a ser
estabelecido sem que haja necessidade de avaliação simultânea de outro
relacionamento. Tratam de conceitos diferentes, podendo ser estabelecidos tanto entre
entidades diferentes como, também, entre as mesmas entidades. No exemplo abaixo a
ESCOLA é frequentada pelo ALUNO e o ALUNO é orientado pelo PROFESSOR.
(relacionamento independente)
RELACIONAMENTOS CONTINGENTES
- Os relacionamentos que se enquadram na classe de contingentes são aqueles que,
tendo dependência uns com os outros, impõem o estabelecimento simultâneo de
associações entre os vários elementos envolvidos. Como regra de negócio mais de um
relacionamento deve ocorrer em um mesmo instante. Ex: No caso de um EMPRESA
que paga impostos, ela obrigatoriamente, deve pagar ISS, COFINS, CSLL, etc.
2. RELACIONAMENTOS MUTUAMENTE EXCLUSIVOS
- Se a associação de um elemento for estabelecida através de um dos relacionamentos,
não poderá ser estabelecida pelos demais.
Ex: a entidade PESSOA FÍSICA pode se relacionar ou com a entidade PAGAR
IMPOSTO DE RENDA ou com a entidade NÃO PAGAR IMPOSTO DE RENDA.
Somente um dos relacionamentos é permitido, exclusivo.
CLASSIFICAÇÃO
ENTIDADE FORTE: São entidades de dados que possuem alto grau de independência
com relação a existência e identificação. São blocos de dados de maior peso específico e
podem ter ocorrências independentes da presença de outras entidades.
ENTIDADE FRACA: É a entidade cuja existência depende da existência de outra
entidade, dita forte. Ex: a entidade AGENCIA não pode existir sem a entidade BANCO
(forte).
ENTIDADE ASSOCIATIVA: Uma entidade é dita como associativa quando não
existe por si só e sua existência está condicionada à existência de duas ou mais
entidades. Seu identificador é formado pela concatenação dos identificadores das
entidades que se associam para lhe dar origem. Ex: Entidade PUBLICACAO e
AUTOR, como relaciono uma com a outra? Atravez da entidade
PUBLICACAO_AUTOR.
RELACIONAMENTOS REDUNDANTES
Um modelo deve ser mínimo, isto é não deve conter conceitos redundantes. Um tipo de
redundância que pode aparecer é a de relacionamentos redundantes. São
relacionamentos que são resultado da combinação de outros relacionamentos entre as
mesmas entidades. Um relacionamento é redundante, quando é possível eliminá-lo do
diagrama ER, sem que haja perda de informações no banco de dados.
Exemplo: transitividade .. A B C A
RELACIONAMENTOS INCONDICIONAIS OU TOTAL
Todos os elementos de uma entidade estão obrigatoriamente relacionados com um
elemento, no mínimo, da outra entidade.
MODELO GLOBAL DE DADOS do E-R
O significado dos dados utilizados em outros sistemas
3. Listagem 1: VARIÁVEIS DE AMBIENTE
CONN SYSTEM @INSTANCIAS POOL
mailto:SYSTEM@INSTANCIAS POOL "> SYSTEM@INSTANCIAS POOL>
C:LOGSSET ECHO ONSET TIMING ONSET LINES 1000SET SQLBL ON
ALTER SESSION SET NLS_DATE_FORMAT = ‘DD/MM/YYYY HH24:MI:SS’;
SELECT SYSDATE FROM DUAL;
SHOW USER
Listagem 2: VERIFICA INSTANCIA
SELECT * FROM GLOBAL_NAME;
DUMP
Listagem 3: VERIFICAR QUAIS SÃO OS USUÁRIOS DO SISTEMA
SELECT USERNAME FROM DBA_USERS WHERE USERNAME LIKE ‘USER%‘;
Listagem 4: CONTA OBJETOS DO SCHEMA
SELECT COUNT(OBJECT_TYPE), OBJECT_TYPEFROM DBA_OBJECTS
WHERE OWNER LIKE ‘USER%‘
GROUP BY OBJECT_TYPE;
SPOOL OFF
Listagem 5: NO TERMINAL LINUX
$export ORACLE_SID=INSTANCE
$exp system@INSTANCE BUFFER=1000000
FILE=EXP_INSTANCE_USER_DATA.DMP
LOG=EXP_INSTANCE_USER_DATA.LOG OWNER=USUÁRIOS LISTADOS
CONSISTENT=Y
gzip EXP_INSTANCE_USER_DATA*
Listagem 6: VERIFICAR SE TEM ALGUM USUÁRIO USANDO O SISTEMA
SELECT SADDR, SID, USERNAME, LOGON_TIME, STATUS, OSUSER,
MACHINE, PROGRAM
FROM V$SESSION WHERE USERNAME LIKE ‘USER%‘;
Listagem 7: VERIFICAR QUAIS SÃO OS USUÁRIOS DO SISTEMA
SELECT USERNAME FROM DBA_USERS WHERE USERNAME LIKE ‘USER%‘;
Listagem 8: VERIFICA ATRIBUTOS DO USUÁRIO
4. SELECT * FROM DBA_USERS WHERE USERNAME LIKE ‘USER%‘;
SELECT * FROM DBA_TAB_PRIVS WHERE GRANTOR LIKE ‘USER%‘;
Listagem 9: VERIFICA PREVILEGIOS DO USUÁRIO
SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE LIKE ‘USER%‘;
SELECT * FROM DBA_ROLE_PRIVS WHERE GRANTEE LIKE ‘USER%‘;[/
Listagem 10: CONTA OBJETOS DO SCHEMA
SELECT COUNT(OBJECT_TYPE), OBJECT_TYPEFROM DBA_OBJECTSWHERE
OWNER LIKE LIKE ‘USER%‘GROUP BY OBJECT_TYPE;
Listagem 11: DESATIVA USUÁRIO
ALTER USER USER ACCOUNT LOCK;
ALTER USER USER PASSWORD EXPIRE;
Listagem 12: VERIFICA STATUS DA CONTA
SELECT USERNAME, ACCOUNT_STATUS FROM DBA_USERS WHERE
USERNAME LIKE ‘USER%’;
SPOOL OFF
Listagem 13: VERIFICAR SE TEM ALGUM USUÁRIO USANDO O SISTEMA
SELECT SADDR, SID, USERNAME, LOGON_TIME, STATUS,OSUSER,
MACHINE, PROGRAM FROM V$SESSION;
Listagem 14: VERIFICAR QUAIS SÃO OS USUÁRIOS DO SISTEMA
SELECT USERNAME FROM DBA_USERS ;
Listagem 15: VERIFICA ATRIBUTOS DO USUÁRIO
SELECT * FROM DBA_USERS;
SELECT * FROM DBA_TAB_PRIVS;
Listagem 16: VERIFICA PREVILEGIOS DO USUÁRIO
SELECT * FROM DBA_SYS_PRIVS;
Listagem 17: VERIFICA PREVILEGIOS DE ROLE
SELECT * FROM DBA_ROLE_PRIVS;
Listagem 18: CONTA OBJETOS DO SCHEMA
SELECT COUNT(OBJECT_TYPE), OBJECT_TYPE FROM DBA_OBJECTSGROUP
BY OBJECT_TYPE;
5. Listagem 19: NO TERMINAL
EXPORT ORACLE_SID=INSTANCE
SQLPLUS / AS SYSDBA
SQL> SHUTDOWN IMMEDIATE;
]
Listagem 20: VERIFICAR QUAIS SÃO OS USUÁRIOS DO SISTEMA
SELECT USERNAME FROM DBA_USERS WHERE USERNAME LIKE ‘USER%‘;
Listagem 21: VERIFICA SE O OBJETOS JÁ EXISTE
SELECT OWNER, OBJECT_NAME, OBJECT_TYPE,CREATED,
LAST_DDL_TIME, STATUS FROM ALL_OBJECTS
WHERE OWNER LIKE ‘USER%‘ AND OBJECT_NAME = ‘OBJECT_NAME’;
Listagem 22: CONTA OBJETOS DO SCHEMA
SELECT COUNT(OBJECT_TYPE), OBJECT_TYPE FROM DBA_OBJECTS
WHERE OWNER LIKE ‘USER%‘
GROUP BY OBJECT_TYPE;
Listagem 23: CONTA OBJETOS INVALIDOS
SELECT COUNT (*) FROM DBA_OBJECTS WHERE STATUS=’INVALID’AND
OWNER LIKE ‘USER%‘;
Listagem 24: VERIFICA OBJETOS INVALIDOS
SELECT OBJECT_TYPE, OBJECT_NAME, STATUS FROM DBA_OBJECTS
WHERE STATUS=’INVALID’ AND OWNER LIKE ‘USER%‘;
Listagem 25: EXECUTA O SCRIPT
CONN USER@INSTANCE
@C:CAMINHOSCRIPT.SQL
CONN SYSTEM@INSTANCE
mailto:SYSTEM@INSTANCE">SYSTEM@INSTANCE
Listagem26: VERIFICA SE O OBJETOS JÁ EXISTE
SELECT OWNER, OBJECT_NAME, OBJECT_TYPE,CREATED,
LAST_DDL_TIME, STATUS
FROM ALL_OBJECTS
WHERE OWNER LIKE ‘USER%‘ AND OBJECT_NAME = ‘OBJECT_NAME’;
Listagem 27: CONTA OBJETOS DO SCHEMA
6. SELECT COUNT(OBJECT_TYPE), OBJECT_TYPE FROM DBA_OBJECTS
WHERE OWNER LIKE ‘USER%‘ GROUP BY OBJECT_TYPE;
Listagem 28: CONTA OBJETOS INVALIDOS
SELECT COUNT (*)FROM DBA_OBJECTS WHERE STATUS=’INVALID’ AND
OWNER LIKE ‘USER%‘;
Listagem 29: VERIFICA OBJETOS INVALIDOS
SELECT OBJECT_TYPE, OBJECT_NAME, STATUS FROM DBA_OBJECTS
WHERE STATUS=’INVALID’AND OWNER LIKE ‘USER%‘;
Listagem 30: GERA SCRIPTS DOS OBJETOS INVALIDOS
SELECT ‘ALTER’’ ‘ OBJECT_TYPE ’ ‘OWNER ’.' OBJECT_NAME ‘ COMPILE;’
FROM DBA_OBJECTS
WHERE STATUS=’INVALID’ AND OWNER LIKE ‘USER%‘;
Listagem 31: VERIFICA OBJETOS INVALIDOS
SELECT OBJECT_NAME, OBJECT_TYPE, STATUSFROM DBA_OBJECTS
WHERE STATUS=’INVALID’ AND OWNER LIKE ‘USER%‘;SPOOL OFF
Listagem 32: - VERIFICAR SE EXISTE ESSE USUÁRIO NO SISTEMA
SELECT USERNAME FROM DBA_USERSWHERE USERNAME LIKE ‘USER%‘;
Listagem 33: CRIAR A TABLESPACE PARA O USUÁRIO
CREATE TABLESPACE INSTANCE_SCHEMA_01
DATAFILE ‘CAMINHO/INSTANCE_SCHEMA.DBF’
SIZE 64M AUTOEXTEND ON NEXT
1M SEGMENT SPACE MANAGEMENT AUTO;
Listagem 33: VERIFICA SE TEM ALGUMA ROLE PARA ESSE USUÁRIO
SELECT * FROM DBA_ROLES WHERE ROLE LIKE ‘%USER%‘;
SELECT * FROM DBA_SYS_PRIVS WHERE LIKE ‘%USER%‘;
SELECT * FROM DBA_TAB_PRIVS WHERE LIKE ‘%USER%‘;
Listagem 34: CRIAR O USUÁRIO
CREATE USER USERIDENTIFIED BY ‘SENHA‘DEFAULT TABLESPACE
INSTANCE_SCHEMA_01TEMPORARY TABLESPACE TEMP;
Listagem 34: APLICA GRANT
GRANT RESOURCE, CONNECT TO USER;
7. Listagem 35: VERIFICAR SE O USUÁRIO FOI CRIADO
SELECT * FROM DBA_USERSWHERE USERNAME LIKE ‘USER%‘;
Listagem 36: VERIFICA ROLES DO USUARIO CRIADO
SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE LIKE ‘USER%‘;
SELECT * FROM DBA_ROLE_PRIVS WHERE GRANTEE LIKE ‘USER%‘;
Listagem 37: VERIFICAR OS USUÁRIOS DO SISTEMA
SELECT * FROM DBA_USERS WHERE USERNAME LIKE ‘USER%‘;
Listagem 38: ALTERA A SENHA
ALTER USER USER IDENTIFIED BY ‘SENHA‘;
Listagem 39: VERIFICAR OS USUÁRIOS DO SISTEMA
SELECT * FROM DBA_USERS WHERE USERNAME LIKE ‘USER%‘;
SPOOL OFF
Leia mais em: SQLs mais usados no Oracle http://www.devmedia.com.br/sqls-mais-
usados-no-oracle/12817#ixzz38PaNvPbH
Existew 206 privilégios no Oracle 11g e todos eles podem ser encontrados podem ser
encontrados na tabela de dicionário de dados SYSTEM_PRIVILEGE_MAP.