quarta-feira, 21 de agosto de 2013

Quais tabelas e campos estão vazios?

Você já precisou gerar uma estatística do seu banco de dados levantando quais tabelas ou campos estão vazios?

Eu já!

Como fazer?

- Confeccione sua instrução SQL, por exemplo

1- Para saber quais tabelas estão vazias, ou seja, zero registro:
SELECT TABLE_NAME, NUM_ROWS
FROM ALL_TABLES
WHERE OWNER = 'INFORME_SEU_OWNER' and NUM_ROWS = 0
ORDER BY TABLE_NAME;

2- Para saber quais campos estão vazios, ou seja, NULL:
SELECT TABLE_NAME, COLUMN_NAME, NUM_NULLS
FROM ALL_TAB_COLUMNS
WHERE OWNER = 'SDE_GIGE' and NUM_NULLS > 0
ORDER BY TABLE_NAME;

É isso, até a próxima!

terça-feira, 12 de março de 2013

Problemas na instalação do Oracle 11g XE

CENÁRIO/AMBIENTE:
Windows 7 64bits
Oracle Database 11g Express Editon 32bits

PROBLEMA:
Ao tentar instalar o Oracle 11g XE no Windows 7 ocorrem inúmeros erros.

ERROS ASSOCIADOS:
Erro na instalação com arquivo KEY_XE.reg
ORA-01031
ORA-01034
ORA-12638
ORA-12514
ORA-27101

SOLUÇÃO:
1- "Executar como administrador" o instalador do oracle

2- Quando apresentar o erro do KEY_XE.reg, anotar o caminho da mensagem de erro, confirmar a mensagem
C:\Users\[nome_usuario]\AppData\Local\Temp\{D9CFC6C9-BC1B-42D7-B834-C88EC110E8FF}\

3- Concluir a instalação do Oracle

4- Entrar no registro do Windows e trocar "DISK1" pelo caminho anotado no item 2
Entrar no registro do windows.
Executar\Regedit
Localizar o caminho HKEY_CLASSES_ROOT\Installer\Products\266B7A503A089BE4EAD1986A429434C1\SouceList\Media

5- Incluir o diretório de instalação do Oracle no PATH
SET PATH=%PATH%;C:\ORACLEXE

6- Para fazer a conexão precisa alterar o SID que por default será "XE", mas caso precise conultar pode-se encontrar o nome da conexão no arquivo TNSNAMES.
SET ORACLE_SID=XE

7- Alterar a variável de ambiente HOME igual ao HOME que está no arquivo LISTNER.ORA
SET ORACLE_HOME=C:\oraclexe\app\oracle\product\11.2.0\server

8- Alterar o arquivo SQLNET.ORA, se for o caso, de
AUTHENTICATION_SERVICES= (NTS)
para
AUTHENTICATION_SERVICES= NONE

9- Parar e iniciar o Oracle

10- Fazer testes de conexão

SQL> conn sys/admin as sysdba
Conectado.

terça-feira, 26 de julho de 2011

Como exportar uma tabela para um arquivo texto?

Você já precisou exportar o conteúdo de uma tabela para um arquivo texto?

Eu já!

Como fazer?

1- Confeccione sua instrução SQL, por exemplo:
select CODIGO || ',' || NOME from usuario

Nota: Utiliza-se || para concatenar, no exemplo, estou concatenando ao valor do campo CODIGO uma vírgula

2- Com o SQL pronto utilizaremos a sequência de comandos abaixo
set pagesize 0
set linesize 500
set heading off
set feedback off
set underline off
set define off
spool export_usuario.txt
select CODIGO || ',' || NOME from usuario;
spool off

Onde:
set pagesize 0 => modificamos o tamanho da página
set linesize 500 => modificamos o tamanho da linha
set heading off => desligamos o cabeçalho
set feedback off => desligamos o retorno
set underline off => desligamos o rodapé
set define off => desligamos o definição
spool export_usuario.txt => ligamos o spool (área de saída) informando nome do arquivo de saída
spool off => desligamos o spool

É isso, até a próxima!

quinta-feira, 27 de agosto de 2009

Multiversionamento de visões (view)

Arquitetura: SGDB Oracle 9i e ArcSDE 9.3

Cenário: Possuo tabelas alfanuméricas e espaciais gerenciadas pelo ArcSDE, preciso no Oracle acessar esses registros

Solução: Criar view's no ArcSDE dessas tabelas

Linha de comando:
sdetable -o create_mv_view -T [MV_VIEW] -t [TABELA] -u [USUARIO] -p [SENHA]

Fonte: ESRI