[oracle_br] Re: 1Z0-050
Googla por : simulados 1Z0-050 1Z0-050 material 1Z0-050 questions 1Z0-050 tests 1Z0-050 braindump 1Z0-050 book 1Z0-050 exam guide que vc acha uns tantos quantos []s Chiappa OBS : nem preciso dizer, Tomar EXTREMO cuidado : o que vc acha de material pirata (e portanto sujeito a vírus & cositas más) não tá no gibi... caveat emptor...
[oracle_br] 1Z0-050
Pessoal, Alguém tem ou sabe onde conseguir SIMULADOS para o exame 1Z0-050? Preciso atualizar minha certificação que ainda é do 10g. Att. Regis Bavaresco
[oracle_br] Re: IMP-00038: Could not convert to environment character set's handle
É *** extremamente Improvável *** que vc consiga, colega : primeiro, o datapump (expdp+impdp) é uma coisa, e o export/import tradicionais (exp+imp) são ** TOTALMENTE OUTRA COISA**, vc Rigorosamente Não Tem garantia nenhuma de formato, via de regra nem o impdp consegue importar arquivos gerados pelo exp, NEM o imp consegue importar arquivos gerados pelo expdp, são BINÁRIOS diferentes que podem gerar FORMATOS INTERNOS diferentes, okdoc ??? O Manual de Database Utilities (que cobre o datapump entre outros) já no cap. 1 - Overview of Oracle Data Pump diretamente afirma isso : " ... Note: Dump files generated by the Data Pump Export utility are not compatible with dump files generated by the original Export utility. Therefore, files generated by the original Export (exp) utility cannot be imported with the Data Pump Import (impdp) utility. " Ele não explicita mas é óbvio, vale a volta : se A não é compatível com B, B não é compatível com A... Não rola, blz ?? O que vc teria que fazer é, usando um client 9i que permita (iirc é a partir de 9.2.0.7), conectar no database 11g e fazer o export com o exp tradicional, aí sim o banco 9i (que só possui exp+imp) poderia importar esses dados... []s Chiappa OBS : é óbvio também além disso que para vc poder importar dados vindos de uma versão superior (11g no caso) para uma versão inferior (9i no caso) que : a. as configurações de NLS ** tem ** que serem se não iguais ao menos Similares/Equivalentes : a chance de Sucesso em se importar algo sem saber isso é baixa e b. os SQLs que vão ser gerados no dumpfile NÃO PODEM USAR absolutamente nenhuma sintaxe/recurso/datatype que a versão inferior não conheça
[oracle_br] Query para Monitoramento de alert.log
Pessoal, eu estou montando (para um cliente usando RDBMS 10gR2, então sem chance de molezinhas como ADR agrupando por Incidente ou X$DBGALERTEXT) uma rotina de verificação de alert.log - para a pesquisa/leitura do alert.log usarei a técnica comum da external table (exemplo abaixo), que entre outras vantagens permite fácil acoplamento em qquer tool de Reporting, mas a análise/ordenação/agrupamento da informação eu pretendia fazer via query também, então por isso usei & abusei de Analytics ... Vou reportar até onde cheguei, e aonde pretendo chegar, com a intenção de receber os sempre bem-vindos Comentários de todos : primeiro, terei um arquivo de alert.log a ser lido , criarei uma external table para isso : SYSTEM:@O11201:SQL>host dir C:\users\jose.chiappa\alert_exemplo.log Pasta de C:\users\jose.chiappa 03/02/2015 15:31 7.371 alert_exemplo.log 1 arquivo(s) 7.371 bytes 0 pasta(s) 267.606.016.000 bytes disponíveis SYSTEM:@O11201:SQL>create directory DIR_ALERT as 'C:\users\jose.chiappa'; Diretório criado. SYSTEM:@O11201:SQL>CREATE TABLE ALERT_LOG_EXT 2 (TEXT VARCHAR2(255) 3 ) ORGANIZATION EXTERNAL 4 (TYPE ORACLE_LOADER 5 DEFAULT DIRECTORY DIR_ALERT 6 ACCESS PARAMETERS 7 (records delimited by newline 8nobadfile 9nologfile 10 ) 11 LOCATION ('alert_exemplo.log') 12 ) 13* REJECT LIMIT UNLIMITED; Tabela criada. ==> os dados brutos : SYSTEM:@O11201:SQL>select rownum, text from alert_log_ext; ROWNUM TEXT -- - 1 Thu Oct 23 13:44:07 2014 2 Starting ORACLE instance (normal) 3 LICENSE_MAX_SESSION = 0 4 LICENSE_SESSIONS_WARNING = 0 5 Shared memory segment for instance monitoring created 6 Picked latch-free SCN scheme 3 7 Using LOG_ARCHIVE_DEST_1 parameter default value as USE_DB_RECOVERY_FILE_DEST 8 Autotune of undo retention is turned on. 9 IMODE=BR 10 ILAT =27 11 LICENSE_MAX_USERS = 0 12 SYS auditing is disabled 13 Starting up: 14 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production 15 With the Partitioning 16 Using parameter settings in client-side pfile C:\APP\ORACLE\ADMIN\O11201\PFILE\INIT.ORA on machine MEUPC 17 System parameters with non-default values: 18 processes= 150 19 memory_target= 3248M 20 control_files= "C:\APP\ORACLE\ORADATA\O11201\CONTROL01.CTL" 21 control_files= "C:\APP\ORACLE\FLASH_RECOVERY_AREA\O11201\CONTROL02.CTL" 22 db_block_size= 8192 23 compatible = "11.2.0.0.0" 24 db_recovery_file_dest= "C:\app\oracle\flash_recovery_area" 25 db_recovery_file_dest_size= 3912M 26 undo_tablespace = "UNDOTBS1" 27 remote_login_passwordfile= "EXCLUSIVE" 28 db_domain= "empresa.com.br" 29 dispatchers = "(PROTOCOL=TCP) (SERVICE=o11201XDB)" 30 local_listener = "LISTENER_O11201" 31 audit_file_dest = "C:\APP\ORACLE\ADMIN\O11201\ADUMP" 32 audit_trail = "DB" 33 db_name = "o11201" 34 open_cursors = 300 35 diagnostic_dest = "C:\APP\ORACLE" 36 37 Thu Oct 23 13:44:08 2014 38 PMON started with pid=2 39 40 Mon Jan 26 10:24:46 2015 41 Thread 1 cannot allocate new log 42 Private strand flush not complete 43 Current log# 2 seq# 65 mem# 0: C:\APP\ORACLE\ORADATA\O11201\REDO02.LOG 44 Thread 1 advanced to log sequence 66 (LGWR switch) 45 Current log# 3 seq# 66 mem# 0: C:\APP\ORACLE\ORADATA\O11201\REDO03.LOG 46 47 Fri Jan 30 00:00:42 2015 48 Errors in file e:\oracle\product\10.2.0\admin\prod\bdump\prod_j000_12900.trc: 49 ORA-12012: error on auto execute of job 288346 50 ORA-29278: SMTP transient error: ORA-29278: SMTP transient error: 421 Service not available 51 52 Fri Jan 30 00:10:43 2015 53 Errors in file e:\oracle\product\10.2.0\admin\prod\bdump\prod_j000_70292.trc: 54 ORA-12012: error on auto execute of job 288346 55 ORA-29278: SMTP transient error: ORA-29278: SMTP transient error: 421 Service not available 56 57 Fri Jan 30 02:45:20 2015 58 The value (30) of MAXTRANS parameter ignored. 59 kupprdp: master process DM00 started with pid=82 60 to execute - SYS.KUPM$MCP.MAIN('SYS_EXPORT_FULL_31' 61 kupprdp: worker process DW01 started with worker id=1 62 to execute - SYS.KUPW$WORKER.MAIN('SYS_EXPORT_FULL_31' 63 64 Fri Jan 30 06:02:07 2015 65 The value (30) of MAXTRANS parameter ignored. 66 kupprdp: master process DM00 started with pid=53 67 to execute - SYS.KUPM$MCP.MAIN('SYS_EXPORT
[oracle_br] IMP-00038: Could not convert to environment character set's handle
Pessoal, Tenho um arquivo DUMP gerado pelo EXPDP do 11g, e preciso fazer um IMP num banco 9i. Estou recebendo o erro IMP-00038: Could not convert to environment character set's handle Verificando meu NLS_CHAR e NLS_LANG, mas não sei qual é do Banco que foi feito o Export. SQL> select * 2 from v$nls_parameters 3 where parameter in ('NLS_CHARACTERSET','NLS_LANGUAGE'); PARAMETER VALUE -- -- NLS_LANGUAGE AMERICAN NLS_CHARACTERSET WE8ISO8859P1 Dá para fazer o import nessa situação, por causa do meu banco 9i? Grato, Ednilson
Re: [oracle_br] Sub Query
select 1 mesmo ou select null. O importante é a query retornar algum valor. * tbm funciona, mas você vai foçar dados que não vai usar pra memória, o que não é interessante. Evandro Giachetto Oracle DBA evandrogiache...@gmail.com Em 3 de fevereiro de 2015 17:22, Emerson Sanches emerson.sanc...@gmail.com [oracle_br] escreveu: > > > Acho que voce matou Evandro. Só uma duvida, no 1 exemplo a sintaxe é where > exists (select 1 from ou .where exists (select * from? > > Muito obrigado. > > Emerson Sanches > Analista de Sistemas > > Em 3 de fevereiro de 2015 16:55, Evandro Giachetto > evandrogiache...@gmail.com [oracle_br] > escreveu: > >> >> >> Não sei se entendi muito bem sua dúvida, se não, peço desculpas. >> >> Tente algo do tipo: >> >> >> Select * >> from Mestre >> where exists (select 1 from Detalhe >> where Detalhe.NumNota = >> Mestre.NumNota >> and Detalhe.Serie = Mestre.Serie and Detalhe.Fornecedor = >> Mestre.Fornecedor and Detalhe.TipoMovto = Mestre.TipoMovto and Detalhe.Item >> = &item). >> >> Ou >> >> Select * >> from Mestre >> where (NumNota, Serie, Fornecedor, TipoMovto) in (select NumNota, Serie, >> Fornecedor, TipoMovto from Detalhe where Item = &item); >> >> >> Só lembrando. >> >> Por questão de performance. >> >> Se seu Subselect (select ... from Detalhe where Item = %Item) trouxer um >> número pequeno de dados, então o segundo exemplo deve exectuar mais rápido. >> >> Se por ventura, este subselect trouxer um número muito grande de >> resultados, então a primeira opção deve apresentar uma performance melhor. >> >> Se a quantidade de resultados for balanceada entre as duas queries, então >> as duas opções devem mostrar performance semelhante. >> >> >> Evandro Giachetto >> Oracle DBA >> evandrogiache...@gmail.com >> >> >> Em 3 de fevereiro de 2015 16:41, Emerson Sanches >> emerson.sanc...@gmail.com [oracle_br] >> escreveu: >> >> >>> >>> Bom tarde a todos do grupo. Em meu sistema tenho uma tabela de NF cuja >>> chave primaria são os campos NumNota, Serie, Fornecedor, TipoMovto e outra >>> tabela com os detalhes dessa nota com chave primaria composta por NumNota, >>> Serie, Fornecedor, TipoMovto e Item. Ate tudo normalíssimo, acredito que >>> todos tenham uma normalização desse tipo em seus sistemas. >>> O problema é que meu chefe quer que eu faça uma pesquisa de notas >>> fiscais, mas quer ter como parâmetro de busca o item da nota fiscal, ou >>> seja, ele quer pesquisar pelo código de entrada do produto. Para resolver >>> isso fiz um subquery assim: >>> >>> Select * >>> from Mestre >>> where Mestre.NumNota in (Select Detalhe.NumNota >>> fromDetalhe >>> where Detalhe.Item = &item) >>> >>> >>> Essa solução funciona parcialmente, pois vai me trazer a nota do item >>> pesquisado, mas também vai trazer a nota de outro fornecedor qualquer, que >>> tenha uma nota com o mesmo numero cadastrado no sistema. Para resolver isso >>> eu teria que passar no subquery todos o campos da PK da tabela Mestre, e é >>> exatamente isso que não sei como fazer. Se alguém tiver alguma sugestão, >>> todas serão bem vindas. >>> >>> Obrigado >>> >>> >>> >>> Emerson Sanches >>> >>> >> > >
Re: [oracle_br] Re: Sub Query
Problema resolvido. Obrigado a todos pela atenção. Emerson Emerson Sanches Analista de Sistemas Em 4 de fevereiro de 2015 11:15, 'Schiavini' et...@schiavini.inf.br [oracle_br] escreveu: > > > Uma opção alternativa ao exists: > > select ... > > from a > > where ( a.c1, a.c2 ) in ( select b.c1, b.c2 > > from b > > where b.c3 = &... ) > > Étore > > From: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] > Sent: quarta-feira, 4 de fevereiro de 2015 08:56 > To: oracle_br@yahoogrupos.com.br > Subject: Re: [oracle_br] Re: Sub Query > > Chiappa, na realidade eu NÃO quero trazer nenhuma coluna da tabela > Detalhes, eu apenas quero filtrar por uma coluna da tabela Detalhes. Se > fizer o join entre as duas tabelas, vai replicar os mesmos dados da tabela > Mestre tantas vezes quanto houver itens na tabela Detalhes. Nao tentei > fazer um Select distinct pra eliminar essa duplicação...vou > tentar isso tb... > > Obrigado. > > Emerson > > Emerson Sanches > Analista de Sistemas > > Em 3 de fevereiro de 2015 17:23, jlchia...@yahoo.com.br [oracle_br] < > oracle_br@yahoogrupos.com.br> escreveu: > > Para que vc precisa de sub-query ??? Se Realmente NumNota, Serie, > Fornecedor e TipoMovto é a PK ** e ** isso está Presente nas duas tabelas > como Chave, por que vc não faz um JOIN entre as duas ?? Assim : > > SELECT colunasdesejadasTANTOdatabeladeNOTAquantodaITEM > FROM Mestre m, Detalhe d > WHERE m.NumNota = i.NumNota > AND m.Serie = i.Serie > AND m.Fornecedor = i.Fornecedor > AND m.TipoMovto = i.TipoMovto > AND d.Item = &v_item; > > []s > > Chiappa > > [As partes desta mensagem que não continham texto foram removidas] > > >
RE: [oracle_br] Re: Sub Query
Uma opção alternativa ao exists: select ... from a where ( a.c1, a.c2 ) in ( select b.c1, b.c2 from b where b.c3 = &... ) Étore From: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Sent: quarta-feira, 4 de fevereiro de 2015 08:56 To: oracle_br@yahoogrupos.com.br Subject: Re: [oracle_br] Re: Sub Query Chiappa, na realidade eu NÃO quero trazer nenhuma coluna da tabela Detalhes, eu apenas quero filtrar por uma coluna da tabela Detalhes. Se fizer o join entre as duas tabelas, vai replicar os mesmos dados da tabela Mestre tantas vezes quanto houver itens na tabela Detalhes. Nao tentei fazer um Select distinct pra eliminar essa duplicação...vou tentar isso tb... Obrigado. Emerson Emerson Sanches Analista de Sistemas Em 3 de fevereiro de 2015 17:23, jlchia...@yahoo.com.br [oracle_br] escreveu: Para que vc precisa de sub-query ??? Se Realmente NumNota, Serie, Fornecedor e TipoMovto é a PK ** e ** isso está Presente nas duas tabelas como Chave, por que vc não faz um JOIN entre as duas ?? Assim : SELECT colunasdesejadasTANTOdatabeladeNOTAquantodaITEM FROM Mestre m, Detalhe d WHERE m.NumNota= i.NumNota AND m.Serie = i.Serie AND m.Fornecedor = i.Fornecedor AND m.TipoMovto = i.TipoMovto AND d.Item = &v_item; []s Chiappa [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Re: Sub Query
Aí muda um pouco de figura : Então, para esses casos em que vc não precisa retornar informação de uma tabela mas sim só pesquisar se uma condição existe, aí o mais indicado seria mesmo o EXISTS , ele serve para isso. A consulta ficaria : Select * from Mestre m where exists(select 1 from Detalhe d where m.NumNota= d.NumNota and m.Serie = d.Serie and m.Fornecedor = d.Fornecedor and m.TipoMovto = d.TipoMovto and d.Item = &v_item ); em português, estamos dizendo acima : leia cada linha da tabela Mestre, e para cada linha lida verifique se existe uma linha correspondente na Detalhe E que além disso o Item seja o especificado - automagicamente as linhas da Mestre que não tiverem Correspondência não são exibidas, essa é a função do EXISTS, dá uma estudada no manual "SQL Reference" (e num bom livro de linguagem SQL" para mais detalhes... []s Chiappa
RES: [oracle_br] Re: ORA-01861: literal does not match format string
Chiappa, Muito obrigado, pela explicação. Grato, Ednilson De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Enviada em: quarta-feira, 4 de fevereiro de 2015 10:35 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Re: ORA-01861: literal does not match format string Bem, a msg de erro é Extrememante clara, indicando que vc está tendo mismatch de NLS : o que deve estar acontecendo aí é que : como creio que vc sabe, quando vc cria um job, ele assume os settings de NLS da sessão (veja exemplo abaixo, coluna NLS_ENV na query da DBA_JOBS) , e pelo jeito vc tem na rotina chamada pelo job algum tipo de conversão implícita (de string para data ou número, provavelmente) ** OU ** tem algum setting NLS (de linguagem, calendário, formato de data, whatever)... Sendo isso, aí se explica o que vc relata : quando vc conecta via algum programa-cliente e roda manualmente a rotina, o NLS da sessão está setado como o job espera, aí funciona, MAS quando vc deixa o JOB rodar/criar sozinho a sessão logicamente ele não conecta via programa algum, e nem abre sessão/prompt de comando no ambiente então ele usa os defaults NLS do database, que são Diferentes do esperado... Primeiro, uma demonstração de que o JOB assume o NLS da sessão, e não o do database : SYSTEM@O11201:SQL>select * from nls_database_parameters; PARAMETER VALUE -- NLS_LANGUAGE AMERICAN NLS_TERRITORY AMERICA NLS_CURRENCY $ NLS_ISO_CURRENCY AMERICA NLS_NUMERIC_CHARACTERS ., NLS_CHARACTERSET WE8MSWIN1252 NLS_CALENDAR GREGORIAN NLS_DATE_FORMATDD-MON-RR NLS_DATE_LANGUAGE AMERICAN NLS_SORT BINARY NLS_TIME_FORMATHH.MI.SSXFF AM NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR NLS_TIMESTAMP_TZ_FORMATDD-MON-RR HH.MI.SSXFF AM TZR NLS_DUAL_CURRENCY $ NLS_COMP BINARY NLS_LENGTH_SEMANTICS BYTE NLS_NCHAR_CONV_EXCPFALSE NLS_NCHAR_CHARACTERSET AL16UTF16 NLS_RDBMS_VERSION 11.2.0.1.0 20 linhas selecionadas. SYSTEM@O11201:SQL>select * from nls_session_parameters; PARAMETER VALUE -- NLS_LANGUAGE BRAZILIAN PORTUGUESE NLS_TERRITORY BRAZIL NLS_CURRENCY R$ NLS_ISO_CURRENCY BRAZIL NLS_NUMERIC_CHARACTERS ,. NLS_CALENDAR GREGORIAN NLS_DATE_FORMATDD/MM/RR NLS_DATE_LANGUAGE BRAZILIAN PORTUGUESE NLS_SORT WEST_EUROPEAN NLS_TIME_FORMATHH24:MI:SSXFF NLS_TIMESTAMP_FORMAT DD/MM/RR HH24:MI:SSXFF NLS_TIME_TZ_FORMAT HH24:MI:SSXFF TZR NLS_TIMESTAMP_TZ_FORMATDD/MM/RR HH24:MI:SSXFF TZR NLS_DUAL_CURRENCY Cr$ NLS_COMP BINARY NLS_LENGTH_SEMANTICS BYTE NLS_NCHAR_CONV_EXCPFALSE 17 linhas selecionadas. SYSTEM:@O11201:SQL>ed Gravou file afiedt.buf 1 BEGIN 2 dbms_job.submit( 3:jobno, 'BEGIN null; END;', sysdate, 'trunc(sysdate+5/1440,''MI'')', TRUE); 4 commit; 5* END; SYSTEM:@O11201:SQL>/ Procedimento PL/SQL concluído com sucesso. select JOB, LOG_USER,BROKEN,INTERVAL,FAILURES,WHAT,NLS_ENV from dba_jobs where log_user='SYSTEM'; JOB LOG_USER BROKEN INTERVAL FAILURES WHAT NLS_ENV --- -- -- -- -- - 65 SYSTEM N trunc(sysdate+5/1440,'MI') 0 BEGIN null; END; NLS_LANGUAGE='BRAZILIAN PORTUGUESE' NLS_TERRITORY='BRAZIL' NLS_CURRENCY='R$' NLS_ISO_CURRENCY='BRAZIL' NLS_NUMERIC_CHARACTERS=',.' NLS_DATE_FORMAT='dd/mm/ hh24:mi:ss' NLS_DATE_LANGUAGE='BRAZILIAN PORTUGUESE' NLS_SORT='WEST_EUROPEAN' ==> Até seria possível em tese se alterar o NLS do database para bater exatamente com o assumido pelo JOB, mas imho isso é uma porquice : a solução CORRETA é programação DEFENSIVA, que implica em NUNCA, JAMAIS, em TEMPO ALGUM, confiar nos defaults de NLS - LOCALIZE na tal rotina onde que vc faz conversão (INCLUSIVE implícita, via SQL!!) e/ou usa built-ins de data/hora/TZdatabase ou de sessão e EXPLICITAMENTE ind
[oracle_br] Re: ORA-01861: literal does not match format string
Bem, a msg de erro é Extrememante clara, indicando que vc está tendo mismatch de NLS : o que deve estar acontecendo aí é que : como creio que vc sabe, quando vc cria um job, ele assume os settings de NLS da sessão (veja exemplo abaixo, coluna NLS_ENV na query da DBA_JOBS) , e pelo jeito vc tem na rotina chamada pelo job algum tipo de conversão implícita (de string para data ou número, provavelmente) ** OU ** tem algum setting NLS (de linguagem, calendário, formato de data, whatever)... Sendo isso, aí se explica o que vc relata : quando vc conecta via algum programa-cliente e roda manualmente a rotina, o NLS da sessão está setado como o job espera, aí funciona, MAS quando vc deixa o JOB rodar/criar sozinho a sessão logicamente ele não conecta via programa algum, e nem abre sessão/prompt de comando no ambiente então ele usa os defaults NLS do database, que são Diferentes do esperado... Primeiro, uma demonstração de que o JOB assume o NLS da sessão, e não o do database : SYSTEM@O11201:SQL>select * from nls_database_parameters; PARAMETER VALUE -- NLS_LANGUAGE AMERICAN NLS_TERRITORY AMERICA NLS_CURRENCY $ NLS_ISO_CURRENCY AMERICA NLS_NUMERIC_CHARACTERS ., NLS_CHARACTERSET WE8MSWIN1252 NLS_CALENDAR GREGORIAN NLS_DATE_FORMATDD-MON-RR NLS_DATE_LANGUAGE AMERICAN NLS_SORT BINARY NLS_TIME_FORMATHH.MI.SSXFF AM NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR NLS_TIMESTAMP_TZ_FORMATDD-MON-RR HH.MI.SSXFF AM TZR NLS_DUAL_CURRENCY $ NLS_COMP BINARY NLS_LENGTH_SEMANTICS BYTE NLS_NCHAR_CONV_EXCPFALSE NLS_NCHAR_CHARACTERSET AL16UTF16 NLS_RDBMS_VERSION 11.2.0.1.0 20 linhas selecionadas. SYSTEM@O11201:SQL>select * from nls_session_parameters; PARAMETER VALUE -- NLS_LANGUAGE BRAZILIAN PORTUGUESE NLS_TERRITORY BRAZIL NLS_CURRENCY R$ NLS_ISO_CURRENCY BRAZIL NLS_NUMERIC_CHARACTERS ,. NLS_CALENDAR GREGORIAN NLS_DATE_FORMATDD/MM/RR NLS_DATE_LANGUAGE BRAZILIAN PORTUGUESE NLS_SORT WEST_EUROPEAN NLS_TIME_FORMATHH24:MI:SSXFF NLS_TIMESTAMP_FORMAT DD/MM/RR HH24:MI:SSXFF NLS_TIME_TZ_FORMAT HH24:MI:SSXFF TZR NLS_TIMESTAMP_TZ_FORMATDD/MM/RR HH24:MI:SSXFF TZR NLS_DUAL_CURRENCY Cr$ NLS_COMP BINARY NLS_LENGTH_SEMANTICS BYTE NLS_NCHAR_CONV_EXCPFALSE 17 linhas selecionadas. SYSTEM:@O11201:SQL>ed Gravou file afiedt.buf 1 BEGIN 2 dbms_job.submit( 3:jobno, 'BEGIN null; END;', sysdate, 'trunc(sysdate+5/1440,''MI'')', TRUE); 4 commit; 5* END; SYSTEM:@O11201:SQL>/ Procedimento PL/SQL concluído com sucesso. select JOB, LOG_USER,BROKEN,INTERVAL,FAILURES,WHAT,NLS_ENV from dba_jobs where log_user='SYSTEM'; JOB LOG_USER BROKEN INTERVAL FAILURES WHAT NLS_ENV --- -- -- -- -- - 65 SYSTEM N trunc(sysdate+5/1440,'MI') 0 BEGIN null; END; NLS_LANGUAGE='BRAZILIAN PORTUGUESE' NLS_TERRITORY='BRAZIL' NLS_CURRENCY='R$' NLS_ISO_CURRENCY='BRAZIL' NLS_NUMERIC_CHARACTERS=',.' NLS_DATE_FORMAT='dd/mm/ hh24:mi:ss' NLS_DATE_LANGUAGE='BRAZILIAN PORTUGUESE' NLS_SORT='WEST_EUROPEAN' ==> Até seria possível em tese se alterar o NLS do database para bater exatamente com o assumido pelo JOB, mas imho isso é uma porquice : a solução CORRETA é programação DEFENSIVA, que implica em NUNCA, JAMAIS, em TEMPO ALGUM, confiar nos defaults de NLS - LOCALIZE na tal rotina onde que vc faz conversão (INCLUSIVE implícita, via SQL!!) e/ou usa built-ins de data/hora/TZdatabase ou de sessão e EXPLICITAMENTE indique os formatos/datatype/linguagem/setting NLS que vc deseja... []s Chiappa
Re: [oracle_br] Re: Sub Query
Chiappa, na realidade eu NÃO quero trazer nenhuma coluna da tabela Detalhes, eu apenas quero filtrar por uma coluna da tabela Detalhes. Se fizer o join entre as duas tabelas, vai replicar os mesmos dados da tabela Mestre tantas vezes quanto houver itens na tabela Detalhes. Nao tentei fazer um Select distinct pra eliminar essa duplicação...vou tentar isso tb... Obrigado. Emerson Emerson Sanches Analista de Sistemas Em 3 de fevereiro de 2015 17:23, jlchia...@yahoo.com.br [oracle_br] < oracle_br@yahoogrupos.com.br> escreveu: > > > Para que vc precisa de sub-query ??? Se Realmente NumNota, Serie, > Fornecedor e TipoMovto é a PK ** e ** isso está Presente nas duas tabelas > como Chave, por que vc não faz um JOIN entre as duas ?? Assim : > > SELECT colunasdesejadasTANTOdatabeladeNOTAquantodaITEM > FROM Mestre m, Detalhe d > WHERE m.NumNota= i.NumNota >AND m.Serie = i.Serie >AND m.Fornecedor = i.Fornecedor >AND m.TipoMovto = i.TipoMovto >AND d.Item = &v_item; > > []s > > Chiappa > >