Re: [oracle_br] Oracle B.I
http://www.adequatebi.com.br/ Em 01/05/2014 18:54, Bruno N. Barboza bruno.n.barb...@gmail.com escreveu: Boa noite pessoal, Por favor, alguém conhece algum site que vende video-aula de oracle ODI e OBIEE?
Re: [oracle_br] Dúvida Pragma Autonomous_Transaction
O erro de trigger mutante é devido a vc estar fazendo select na mesma tabela da trigger. O Pragma Autonomous_Transaction abre uma nova sessão(diferente da mesma que vc estava fazendo o delete) com isso acredito que vc não consiga pegar o valor do :OLD já que esta em sessão diferente. []s Em 12 de maio de 2011 15:24, Lo Bello rogerio...@gmail.com escreveu: Pessoal, Tenho uma tabela com os campos CONTA e CONTA_MAE, o campo CONTA_MAE se refere a outras linhas da mesma tabela. O problema é que tenho uma trigger que ao deletar um registro no ON DELETE verifica se existe alguma conta com o campo CONTA_MAE mencionando esse registro deletado, mas a trigger dá mutante. Achei uma solução usando Pragma Autonomous_Transaction, mas li em alguns lugares que esse comando pode te causar alguns problemas se usado de forma incorreta. alguém sabe me dizer se existe alguma problema em uso-la assim: CREATE OR REPLACE TRIGGER TBCONTA_TR BEFORE DELETE ON TBCONTA FOR EACH ROW DECLARE V_CONT NUMBER; Pragma Autonomous_Transaction; BEGIN SELECT COUNT(*) INTO V_CONT FROM TBCONTA WHERE CONTA_MAE = :OLD.CONTA; IF V_CONT 0 THEN RAISE_APPLICATION_ERROR( -20151,'Esta conta tem contas abaixo dela, delete-as primeiro!'); END IF; END; Rogério [As partes desta mensagem que não continham texto foram removidas] -- Fabio Martinez [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] Re: db_link
Se o valor da variável GLOBAL_NAMES na instância onde o database link será criado estiver marcada como TRUE o nome global do banco de dados remoto deve ser utilizado (composto pelo nome_do_banco.domínio, ou seja, os parâmetros db_name.db_domain do arquivo de inicialização: initSID.ora). O nome global do banco pode-ser descobrir através do select: *select GLOBAL_NAME from GLOBAL_NAME;* Em 9 de maio de 2011 09:56, hgaiotto hgaio...@yahoo.com.br escreveu: Opa... Verifiquei o parâmetro DB_DOMAIN no banco, e está com VALUE em branco. --- Em oracle_br@yahoogrupos.com.br, David Ricardo drb.ricardo@... escreveu Parceiro bom dia. Seu banco por um acaso está usando DOMAIN?...porque essa questão de FULL QUALIFY ocorre muito quando você tem configurações de dominio direto no banco veja como esta este parametro abaixo no seu banco : DB_DOMAIN *Parameter type* String *Syntax* DB_DOMAIN = *domain_name* *Default value* There is no default value. *Parameter class* Static *Range of values* Any legal string of name components, separated by periods and up to 128 characters long (including the periods). This value cannot be NULL. *Real Application Clusters* You must set this parameter for every instance, and multiple instances must have the same value. In a distributed database system, DB_DOMAIN http://download.oracle.com/docs/cd/B10501_01/server.920/a96536/ch142.htm#REFRN10036 specifies the logical location of the database within the network structure. You should set this parameter if this database is or ever will be part of a distributed system. The value consists of the extension components of a global database name, consisting of valid identifiers, separated by periods. Oracle Corporation recommends that you specify DB_DOMAIN as a unique string for all databases in a domain. This parameter allows one department to create a database without worrying that it might have the same name as a database created by another department. If one sales department's DB_DOMAIN is JAPAN.ACME.COMhttp://japan.acme.com/, then their SALES database (SALES.JAPAN.ACME.COMhttp://sales.japan.acme.com/) is uniquely distinguished from another database with DB_NAME = SALES but with DB_DOMAIN = US.ACME.COMhttp://us.acme.com/ . If you omit the domains from the name of a database link, Oracle expands the name by qualifying the database with the domain of your local database as it currently exists in the data dictionary, and then stores the link name in the data dictionary. The characters valid in a database domain name are: alphanumeric characters, underscore (_), and number sign (#). *See Also:* - *Oracle9i Database Performance Tuning Guide and Reference http://download.oracle.com/docs/cd/B10501_01/server.920/a96533/toc.htm * for more information on setting this parameter - The data dictionary view GLOBAL_NAME http://download.oracle.com/docs/cd/B10501_01/server.920/a96536/ch2431.htm#1316220 http://download.oracle.com/docs/cd/B10501_01/server.920/a96536/ch2431.htm#1316220 Em 9 de maio de 2011 09:42, hgaiotto hgaiotto@... escreveu: Bom dia! Estou com uma dúvida em relação a criação de um db_link em uma base Oracle 9i. Estou criando o db_link: create database link teste connect to teste identified by teste using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 111.11.111.111)(PORT = 2000))) (CONNECT_DATA = (SERVICE_NAME = dmzdb)))'; O meu db_link é teste, porém ele está criando da seguinte maneira: teste.provedor.com.br Não consigo fazer com que este db_link fique como teste. Obrigado. -- -- David Ricardo B. de Siqueira IT Brazil - Database Administrator DBANet BLOG .: http://databaseguard.blogspot.com O mistério da vida me causa a mais forte emoção. É o sentimento que suscita a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo e seus olhos se cegaram..(Albert Einstein - 1879 - 1955) [As partes desta mensagem que não continham texto foram removidas] -- Fabio Martinez [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O
Re: [oracle_br] Problema na query
-8197-3405 MSN: marcelog...@hotmail.com [As partes desta mensagem que não continham texto foram removidas] -- Fabio Martinez [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] Envio de e-mail
Veja se ajuda com alguma idéia http://pt.w3support.net/index.php?db=soid=138747 Em 15 de abril de 2011 14:35, Roberto Warstat ro.wars...@gmail.comescreveu: Pessoal, Na empresa temos uma procedure para envio de e-mail, que está aí embaixo. CREATE OR REPLACE PROCEDURE Enviar_Email ( assunto varchar2, msg varchar2, remetente_o varchar2, -- o e-mail sera enviado por este endereco remetente_f varchar2, -- o endereco que aparecera como remetente sera esse destinatario varchar2, copia varchar2 ) -- e-mail que ira receber a copia is host varchar2(40); mensagem varchar2(32767); crlf varchar2(2); boundary varchar2(256); -- Abre conex?o SMTP CONEXAO UTL_SMTP.CONNECTION; BEGIN host := '192.168.0.10'; crlf := chr(13) || chr(10); boundary := 'CES.Boundary.DACA587499938898'; -- Abre conex?o com um Servidor SMTP(Simple Mail Transfer Protocol), porta padr?o SMTP e 25 CONEXAO := utl_smtp.open_connection (host,25); -- As 3 linhas abaixo e caso o servidor precise de autenticac?o -- A segunda linha e o usuario e 3? e a senha UTL_SMTP.HELO(CONEXAO,host); utl_smtp.command (CONEXAO, 'AUTH LOGIN'); utl_smtp.command (CONEXAO, utl_raw.cast_to_varchar2(utl_encode.base64_encode(utl_raw.cast_to_raw(('usuario@dominio '); utl_smtp.command (CONEXAO, utl_raw.cast_to_varchar2(utl_encode.base64_encode(utl_raw.cast_to_raw(('senha'); UTL_SMTP.HELO (CONEXAO, host); -- Define o remetente e o destinatario do e-mail de acordo com os parametros passados UTL_SMTP.MAIL (CONEXAO, ('' || remetente_o || '')); UTL_SMTP.RCPT (CONEXAO, ('' || destinatario || '')); if copia is not null then UTL_SMTP.RCPT (CONEXAO, ('' || copia || '')); end if; -- Abre a transferencia de dados para o e-mail UTL_SMTP.OPEN_DATA(CONEXAO); -- Escreve o cabecalho da mensagem mensagem := 'Date: ' || TO_CHAR(SYSDATE,'dd Mon yy hh24:mi:ss') || crlf || 'From: ' || remetente_f || crlf || 'Subject: ' || assunto || crlf || 'To: ' || destinatario || crlf || 'Cc: ' || copia || crlf; --mensagem := mensagem || 'Mime-Version: 1.0' || crlf || -- 'Content-Type: multipart/mixed; boundary=' || boundary || '' || crlf || crlf; --utl_smtp.write_data(CONEXAO,mensagem); -- Escreve o conteudo do e-mail utl_smtp.write_data(CONEXAO,mensagem); utl_smtp.write_data(CONEXAO,msg); -- Fecha o data e fecha a conex?o com o servidor smtp UTL_SMTP.CLOSE_DATA(CONEXAO); UTL_SMTP.QUIT (CONEXAO); Exception WHEN OTHERS THEN utl_smtp.quit (conexao); raise_application_error(-20011,'N?o foi possivel enviar o e-mail devido ao seguinte erro: ' || sqlerrm); END Enviar_Email; / Ela funciona perfeitamente, com exceção de um pequeno detalhe: se na montagem do corpo da mensagem eu colocar algo do tipo MSG := 'Data:' || to_char(sysdate,'dd/mm/ hh24:mi') || CHR(10) || CHR(13) || 'funcionou'; Só irá ser enviada a segunda linha. A primeira, onde deveria aparecer a data não vai. Isso ocorre tanto com o Oracle 9 Enterprise, como com o 10g Enterprise. Abraço, Roberto [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] Query para recuperar tabelas dependentes
select R.owner, rpad(' ',level*2)||' '|| R.table_name, SYS_CONNECT_BY_PATH(R.table_name, '/'), R.constraint_name -- level from user_constraints r, user_constraints o where r.r_owner = o.owner and r.r_constraint_name = o.constraint_name and o.constraint_type in ('P','U') and r.constraint_type = 'R' ando.table_name = 'Nome_tabela' connect by prior R.constraint_name = O.constraint_name start with O.table_name='Nome_tabela' Em 15 de abril de 2011 16:07, Tathyanna Pelegrinni tathya...@gmail.comescreveu: Boa tarde, Galera! Algum de vcs possui um script que mostre a ordem de dependencia das tabelas, de acordo com as FKs? Tipo... tenho q fazer um script de delecao, mas tenho q saber a ordem certa delas. Em q ordem deletar qual tabela... (?) Podem me ajudar? Exemplo da query que fiz, para trazer a dependencia da tabela principal. SELECT DISTINCT ACC.OWNER AS OWNER APONTADO ,ACC.TABLE_NAME AS TABELA APONTADA ,ACC.COLUMN_NAME AS COLUNA APONTADA ,ACC.CONSTRAINT_NAME AS NOME CONSTRAINT ,DECODE( CO.CONSTRAINT_TYPE, 'R', 'Foreign Key', 'DESCONHECIDO' ) AS TIPO ,ACC2.OWNER AS OWNER ,ACC2.TABLE_NAME AS TABELA ,ACC2.COLUMN_NAME AS COLUNA ,ACC2.CONSTRAINT_NAME AS CONSTRAINT FROM ALL_CONS_COLUMNS ACC ,ALL_CONSTRAINTS CO ,ALL_CONS_COLUMNS ACC2 WHERE ACC.OWNER = CO.OWNER AND ACC.CONSTRAINT_NAME = CO.CONSTRAINT_NAME AND ACC.TABLE_NAME = CO.TABLE_NAME AND CO.CONSTRAINT_TYPE = 'R' AND CO.R_CONSTRAINT_NAME = ACC2.CONSTRAINT_NAME AND ACC2.OWNER = 'FATUR' AND ACC2.TABLE_NAME = 'FATURA' ORDER BY 2, 3 , 4 queria uma q trouxesse estas com as depedencias da tabela apontada, no caso. Alguem, alguem?? rsrsrs... [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] Acessar 2 ou mais bases simultaneamente
Exatamentovc pode dar permissão de select para o schema desejado e se preferir pode criar o sinonimo Em 15 de abril de 2011 14:35, Márcio Ricardo Alves da Silva marcio_...@yahoo.com.br escreveu: Rafael, nesse caso dando privilégtios de DMLS e criando sinônimos te ajuda. Untitled Document Mrcio Ricardo Alves da Silva Database Administrator Fone: 55 11 5501-8300 www.config.com.br NF-e | CT-e | NFs-e | Mobilidade | Gestao Comercial | Gestao financeira de redes de varejo - Original Message - From: Rafael HM Pereira rafael.henri...@gmail.com To: Fabio Martinez mtzfa...@gmail.com Cc: oracle_br@yahoogrupos.com.br Sent: Friday, April 15, 2011 2:32 PM Subject: Re: [oracle_br] Acessar 2 ou mais bases simultaneamente Fábio boa tarde!! Dei uma olhada no DBLink conforme mencionado, e acredito que ele resolverá meu problema. No entanto gostaria de tirar uma outra dúvida: para uma única instancia com diversos esquemas distintos a forma mais correta para consolidar estas informações também seria o DBLink? O que você me sugere nesta situação? Sds, Rafael 2011/4/15 Fabio Martinez mtzfa...@gmail.com Acredito que possa criar um DBLink entre as bases e fazer a consulta que precisa Em 15 de abril de 2011 13:04, Rafael HM Pereira rafael.henri...@gmail.com escreveu: Pessoal boa tarde! Tenho 3 empresas distintas rodando o mesmo sistema. Sempre que preciso avaliar alguma informação, tenho que extrair os dados das tres bases e concatena-los em uma planilha de excel afim de demonstrar os resultados do grupo. Isso gera um enorme retrabalho e as vezes erros. Gostaria de saber se existe algum recurso no oracle que permita visualizar as 3 bases como uma base única e transparente. Assim poderia executar minhas queries diretamente neste ambiente consolidado. Existe algum recurso neste sentido? Qual caminho devo seguir? Meus ambientes rodam oracle 10r2 enterprise em Linux. Desde Ja agradeço o apoio. -- Rafael HM Pereira Gerente de Projetos Linux User Id: 360166 Skype: rafaelhmpereira Msn: rafael.henri...@gmail.com Mail: rafael.henri...@gmail.com Blog: http://rafaelhmpereira.blogspot.com LinkedIn: http://br.linkedin.com/in/rafaelhmpereira (27) 8805-6435 / (27) 9233-0734 / (27) 3328-4320 Em 15/04/2011, às 04:50, oracle_br@yahoogrupos.com.br escreveu: Bem Vindo a Comunidade Oracle no Brasil Mensagens neste resumo (6 Mensagens) 1.1. RES: RES: [oracle_br] Mover base ASM para FileSystem De: Reginaldo de Faveri da Silva 2. DBA Oracle + Hyperion Sênior De: Andre Benevides - Bertini 3.1. Re: Problemas Trigger de Bloqueio - Raise_Application Error De: Israel Lopes dos Santos 4.1. SCAN RAC 11.2.0.2 - Dúvidas Sobre a Montagem do SCAN De: candiurudba 4.2. Re: [oracle_br] SCAN RAC 11.2.0.2 - Dúvidas Sobre a Montagem do S De : Marcos Braga 5. [DICA] Curso: Oracle Prático - Local: Rio de Janeiro - Centro - N De : Edson Almeida Junior (Consulting) Ver todos os tópicos | Criar novo tópico Mensagens 1.1. RES: RES: [oracle_br] Mover base ASM para FileSystem Enviado por: Reginaldo de Faveri da Silva regina...@softplan.com.br Qui, 14 de Abr de 2011 9:43 am Israel bom dia. Muito obrigado por sua ajuda. Consegui resolver meu problema. O roteiro que estava aplicando no ambiente atual (Linux+Oracle 11+RAC +ASM para Linux+Oracle 11+FS) era exatamente igual ao aplicando no ambiente antigo (Windows+Oracle 10+RAC+ASM para Windows+Oracle 10+FS) e funcionava. Cheguei aplicar os roteiros em paralelos usando os mesmos nomes de bases, INITs e assim por diante e não funcionou. Seguindo seu conselho eu descobri que mesmo informando o parâmetro db_create_online_log_dest_1 ao efetuar o open reset logs ele esta va procurando os mesmos no ASM. Notei isto com a saída do backup co ntrolfile. Usei então sua sugestão, fiz os ajustes e funcionou. Obrigado a todos pelo apoio. -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Israel Lopes dos Santos Enviada em: quarta-feira, 13 de abril de 2011 15:54 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: [oracle_br] Mover base ASM para FileSystem Olá Amigo. Aqui na empresa fazemos isso regularmente para testar nossos backups. Banco: Oracle 10.1.5 Enterprise SO: Red Hat Enterprise Linux AS release 4 (Nahant Update 7) Obs.: Usamos RMAN para backup do banco, controlfile e spfile. Basicamente seguimos o roteiro abaixo: - Copia os backupsets pra maquina - Seta o sid * No RMAN: - Seta o DBID - Restore do SPFILE - Gerar um pfile e comentar ou adequar as referencias a ASM e DG. Caminhos de controlfile,dump,etc) - Startup nomount usando o pfile modificado - Restore controlfile - Mount - Restore (bloco abaixo
Re: [oracle_br] Acessar 2 ou mais bases simultaneamente
Acredito que possa criar um DBLink entre as bases e fazer a consulta que precisa Em 15 de abril de 2011 13:04, Rafael HM Pereira rafael.henri...@gmail.comescreveu: Pessoal boa tarde! Tenho 3 empresas distintas rodando o mesmo sistema. Sempre que preciso avaliar alguma informação, tenho que extrair os dados das tres bases e concatena-los em uma planilha de excel afim de demonstrar os resultados do grupo. Isso gera um enorme retrabalho e as vezes erros. Gostaria de saber se existe algum recurso no oracle que permita visualizar as 3 bases como uma base única e transparente. Assim poderia executar minhas queries diretamente neste ambiente consolidado. Existe algum recurso neste sentido? Qual caminho devo seguir? Meus ambientes rodam oracle 10r2 enterprise em Linux. Desde Ja agradeço o apoio. -- Rafael HM Pereira Gerente de Projetos Linux User Id: 360166 Skype: rafaelhmpereira Msn: rafael.henri...@gmail.com Mail: rafael.henri...@gmail.com Blog: http://rafaelhmpereira.blogspot.com LinkedIn: http://br.linkedin.com/in/rafaelhmpereira (27) 8805-6435 / (27) 9233-0734 / (27) 3328-4320 Em 15/04/2011, às 04:50, oracle_br@yahoogrupos.com.br escreveu: Bem Vindo a Comunidade Oracle no Brasil Mensagens neste resumo (6 Mensagens) 1.1. RES: RES: [oracle_br] Mover base ASM para FileSystem De: Reginaldo de Faveri da Silva 2. DBA Oracle + Hyperion Sênior De: Andre Benevides - Bertini 3.1. Re: Problemas Trigger de Bloqueio - Raise_Application Error De: Israel Lopes dos Santos 4.1. SCAN RAC 11.2.0.2 - Dúvidas Sobre a Montagem do SCAN De: candiurudba 4.2. Re: [oracle_br] SCAN RAC 11.2.0.2 - Dúvidas Sobre a Montagem do S De : Marcos Braga 5. [DICA] Curso: Oracle Prático - Local: Rio de Janeiro - Centro - N De : Edson Almeida Junior (Consulting) Ver todos os tópicos | Criar novo tópico Mensagens 1.1. RES: RES: [oracle_br] Mover base ASM para FileSystem Enviado por: Reginaldo de Faveri da Silva regina...@softplan.com.br Qui, 14 de Abr de 2011 9:43 am Israel bom dia. Muito obrigado por sua ajuda. Consegui resolver meu problema. O roteiro que estava aplicando no ambiente atual (Linux+Oracle 11+RAC +ASM para Linux+Oracle 11+FS) era exatamente igual ao aplicando no ambiente antigo (Windows+Oracle 10+RAC+ASM para Windows+Oracle 10+FS) e funcionava. Cheguei aplicar os roteiros em paralelos usando os mesmos nomes de bases, INITs e assim por diante e não funcionou. Seguindo seu conselho eu descobri que mesmo informando o parâmetro db_create_online_log_dest_1 ao efetuar o open reset logs ele esta va procurando os mesmos no ASM. Notei isto com a saída do backup co ntrolfile. Usei então sua sugestão, fiz os ajustes e funcionou. Obrigado a todos pelo apoio. -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Israel Lopes dos Santos Enviada em: quarta-feira, 13 de abril de 2011 15:54 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: [oracle_br] Mover base ASM para FileSystem Olá Amigo. Aqui na empresa fazemos isso regularmente para testar nossos backups. Banco: Oracle 10.1.5 Enterprise SO: Red Hat Enterprise Linux AS release 4 (Nahant Update 7) Obs.: Usamos RMAN para backup do banco, controlfile e spfile. Basicamente seguimos o roteiro abaixo: - Copia os backupsets pra maquina - Seta o sid * No RMAN: - Seta o DBID - Restore do SPFILE - Gerar um pfile e comentar ou adequar as referencias a ASM e DG. Caminhos de controlfile,dump,etc) - Startup nomount usando o pfile modificado - Restore controlfile - Mount - Restore (bloco abaixo): run { allocate channel ch1 device type disk; allocate channel ch2 device type disk; allocate channel ch3 device type disk; allocate channel ch4 device type disk; set newname for datafile 1 to '/u02/oradata/banco/datafile/ system.dbf'; set newname for datafile 2 to '/u02/oradata/banco/datafile/ sysaux.dbf'; set newname for datafile 3 to '/u02/oradata/banco/datafile/users.dbf'; set newname for datafile 4 to '/u02/oradata/banco/datafile/ undotbs2.dbf'; restore database; SWITCH DATAFILE ALL; release channel ch1; release channel ch2; release channel ch3; release channel ch4; } - Recover (bloco abaixo): run { allocate channel ch1 device type disk; allocate channel ch2 device type disk; catalog backuppiece '/u02/backup/archive1.rman'; catalog backuppiece '/u02/backup/archive2.rman'; catalog backuppiece '/u02/backup/ archive3.rman'; recover database; release channel ch1; release channel ch2; } * No sqlplus: - alter database backup controlfile to trace as '/u02/ctlbanco.sql' - Edita o arquivo do controlfile na opção RESETLOGS alterando o cami nho dos redos (datafiles já estarão com o nome correto devido ao SWI TCH DATAFILE ALL no bloco de restore) - Shutdown immediate - @/oracle/ctlbanco.sql -
Re: [oracle_br] Re: Excluir enter de uma tabela
Tenta assim... UPDATE TABELA SET CAMPO = translate(CAMPO,chr(10)||chr(13),' '); Em 12 de agosto de 2010 10:37, rjpzav rjp...@yahoo.com.br escreveu: Tentei usar este comando e retorna o erro: ORA-00900: invalid SQL statement --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, Jeison jei...@... escreveu Tenta fazer assim REPLACE( REPLACE( historico, CHR(13),' '),CHR(10),' ') _ De: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br[mailto: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br] Em nome de rjpzav Enviada em: quinta-feira, 12 de agosto de 2010 10:06 Para: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br Assunto: [oracle_br] Re: Excluir enter de uma tabela Se conseguir tirar os 'enter' do final já resolve meu problema mas se tiver como pesquisar por outras posições, também acho interessante, pois pode haver algum enter em outros locais do campo que não percebi. Grato; --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.brmailto: oracle_br%40yahoogrupos.com.br oracle_br%2540yahoogrupos.com.br , Eduardo Schurtz eduardo.schurtz@ escreveu Você quer tirar o enter apenas do final, é isso? Em 12/08/2010 09:47, rjpzav rjpzav@escreveu: Não consegui rodar o replace abaixo, deixa eu explicar melhor o problema: Tenho a tabela LANCAMENTOS e nela o campo HISTÓRICO. Preciso encontrar todos os registros da tabela lancamentos que tenham 'enter' no final do campo histórico e retirar tais 'enter'. Desde já agradeço! --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.broracle_br%2540yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, Elis Azevedo Nery elisnery@ escreveu Tenta aí: replace(HISTORICO, chr(13) || chr(10), '') _... De: rjpzav rjpzav@ Para: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.broracle_br%2540yahoogrupos.com.br Enviadas: Quinta-feira, 12 de Agosto de 2010 13:06:06 Assu... [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] ORA-00984
Cara, acho que pro pessoal lhe ajudar seria melhor postar o código completo. Mas de cara posso lhe adiantar que o seu execute immediate esta errado...não se pode passar o nome da varivel dentro da string ela deve ser passada como parametro..Exempo. execute immediate ('insert into tabela (coluna) values(:valor)')using variavel; Em 5 de agosto de 2010 16:49, luiz_ed7 luiz...@gmail.com escreveu: FALA PESSOAL! SOU NOVO EM ORACLE E TO PASSANDO UM APERTO DANADO COM ISSO! DESENVOLVI UM PACOTE DE FUNÇÕES NO SQL TOOLS, UMA DELAS CONFORME ABAIXO: select count(*) into v_contador from r024car where estcar = v_estcar and codcar = PCodCar; if (v_contador = 0) then --Insere novo registro EXECUTE IMMEDIATE 'insert into r024car(estcar,codcar,titred,titcar) values(v_estcar,PCodCar,PTitCar,PDesCar)'; --Confirma operacao commit; else --Atualiza registro existente EXECUTE IMMEDIATE 'update r024car set titred = substr(PTitCar,1,30), titcar = substr(PDesCar,1,60) where estcar = v_estcar and codcar = PCodCar'; --Confirma operacao commit; end if; QUANDO ENVIO O SEGUINTE COMANDO PARA PODER TESTAR: select DATABASE.PACOTE.SP_CARGOS('1', 'Teste', 'Teste Desc') as ret from dual; O SQLTOOLS ME RETORNA O SEGUINTE ERRO, ESTANDO COM A LINHA 15 COMENTADA OU NÃO (ELA NÃO TEM NADA AVER COM ESSA FUNÇÃO!): ORA-00984: column not allowed here ORA-06512: at TELEMAT.ACESSO_TERCEIROS, line 15 ME AJUDEM POR FAVOR, NÃO SEI MAIS O QUE FAZER!! OBRIGADO [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] Dúvida Partition
Da uma olhada nesse link, tem alguns exemplos veja se lhe ajuda http://psoug.org/reference/partitions.html Em 23 de julho de 2010 12:06, francisco porfirio francisco.porfi...@gmail.com escreveu: Pessaol, Estou querendo fazer alguns testes de performance utilizando particionamento de tabela. A partição será realizada na coluna X, porém, para o meu problema não posso determinar que a particao 1 irá armazenar a coluna x quando X 100. Precisaria de algo como: partition part1 values (5, 7, 59) tablespace users, partition part2 values (todos os demais valores menos os da part1)tablespace users); Ou seja, na part1 sei exatamente os valores que pretendo armazenar, na part2 são todos os valores menos os da part1. Alguem sabe se tem algo que me permita fazer isso com partition? Versão oracle: 10.2.0.4.0 -- Atenciosamente Francisco Porfirio Ribeiro Neto [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] Permissão para alter package compil e
Acredito que tbm deverá ter permissão de alter any procedure.. grant alter any procedure to Pedro; Em 23 de junho de 2010 15:27, Raul Francisco Costa F. de Andrade, DBA raulf...@gmail.com escreveu: dá pra ele um grant execute on schema.package para o login que vai compilar Em 23 de junho de 2010 15:08, jubrovolski jubrovol...@yahoo.com.br escreveu: Boa tarde Como dou permissão para um usuario poder compilar um package de outro usuario? Exemplo: estou logado com o usuario joao e quero compilar um package do usuario pedro: ALTER PACKAGE PEDRO.PED_PACKAGE compile; Obrigado Reuber -- -- Raul Francisco da Costa Ferreira de Andrade DBA - OCA - Oracle Certified Associate COBIT Foundation 4.1 Fone: (41)8855-8874 Brt email: raulf...@gmail.com Skype: raul.andrade www.clickdba.com A adversidade leva alguns a serem vencidos e outros a baterem recordes. William Arthur Ward [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Função SUBSTR
tenta assim. SQL select substr('011',-11,3)||'-'||substr('011',-8,4)||'-'||substr('011',-4,4) telefone from dual; TELEFONE - 011-- SQL Em 1 de junho de 2010 13:50, Flaviano, Wellington (GE Capital) wellington.flavi...@ge.com escreveu: Braga. Executei o mesmo select que voce passou (abaixo) e dá esse erro, disseram que é por causa da versão do banco, que utilizo o 8g. select '011' original, regexp_replace('011', '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual []'s -Original Message- From: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br[mailto: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br] On Behalf Of Marcos Braga Sent: Tuesday, June 01, 2010 1:48 PM To: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br Subject: Re: [oracle_br] Função SUBSTR O erro reporta um caracter inválido na string. Seguinte, o código que passei só vai funcionar quando encontrar campo com números (há como mudar isso). Uma questão para levar em consideração é: os caracteres que tem no campo de telefone são somente números? Gostaria que postasse o código que executou juntamente com o erro, vai melhorar o entendimento. []s Braga Em 1 de junho de 2010 10:58, Flaviano, Wellington (GE Capital) wellington.flavi...@ge.com wellington.flaviano%40ge.com escreveu: Marcos. Ao executar o comando aparece o seguinte erro: ORA-00904: REGEXP_REPLACE: invalid identifier ... o que pode ser? Permissão de acesso? []'s -Original Message- From: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.broracle_br% 40yahoogrupos.com.br[mailto: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.broracle_br% 40yahoogrupos.com.br] On Behalf Of Marcos Braga Sent: Tuesday, June 01, 2010 10:20 AM To: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.broracle_br% 40yahoogrupos.com.br Subject: Re: [oracle_br] Função SUBSTR Olá, Observe este pequeno exemplo: SQL select '011' original, regexp_replace('011', '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual; ORIGINAL MODIFICADO --- - 011 011-- 1 linha selecionada. Creio que isso resolverá seu problema: regexp_replace(NR_FONE_PRINCIPAL, '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') Tenho um exemplo bem parecido, formatando CPF neste endereço: http://profissionaloracle.com.br/blogs/braga/2009/07/06/formatando-saida-com-regexp_replace-cpf/ []s Braga Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) wellington.flavi...@ge.com wellington.flaviano%40ge.comwellington.flaviano% 40ge.com escreveu: Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de mssql ... então vamos lá. Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero transformar ele assim 011-- e um simples select Estou fazendo da seguinte forma: TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3)) + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL Só que não está funcionando o que estou fazendo de errado? Valeu. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ -- Links do Yahoo! Grupos [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ -- Links do Yahoo! Grupos [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As
[oracle_br] Re: [usuarios_oracle] SQL Dynamic
Opa, acho que poderia ser assim (concatenar a variavel): obs: faltou o into e begin/end no select - alterações em vermelho Obs2: não testei create or replace function FC_TESTE_FORMULA( vnContrato CF_CONTRATO_VALOR.CONTRATO_ID%type, vdData_lancamento CF_CONTRATO_VALOR.DATA_LANCAMENTO_ID%type, vdData_operacao CF_CONTRATO_VALOR.DATA_OPERACAO_ID%type) criar variavel vnvalor vsSql := 'begin select CF_CONTRATO_OPERACAO.VALOR_OPERACAO into :vnvalor from CF_CONTRATO_OPERACAO where CF_CONTRATO_OPERACAO.CONTRATO_ID = '|| vnContrato||' and CF_CONTRATO_OPERACAO.DATA_LANCAMENTO_ID = ' ||vdData_lancamento||'; end;' begin execute immediate vsSql using out vnvalor ; exception when others then raise_application_error (-2, 'Formula não validada ' SQLERRM); end; Em 27 de maio de 2010 08:10, Marcos Nunes mar...@usinamoreno.com.brescreveu: Bom dia Tenha function que vai executar SQL Dynamic armazenado no banco. A questão é a seguinte, como eu poderia executar o SQL sem ter que substituir as variavies pelo conteudo da variável (em vermelho) Assim funciona. create or replace function FC_TESTE_FORMULA( vnContrato CF_CONTRATO_VALOR.CONTRATO_ID%type, vdData_lancamento CF_CONTRATO_VALOR.DATA_LANCAMENTO_ID%type, vdData_operacao CF_CONTRATO_VALOR.DATA_OPERACAO_ID%type) vsSql := 'select CF_CONTRATO_OPERACAO.VALOR_OPERACAO from CF_CONTRATO_OPERACAO where CF_CONTRATO_OPERACAO.CONTRATO_ID = vnContrato and CF_CONTRATO_OPERACAO.DATA_LANCAMENTO_ID = vdData_lancamento'; begin vsSql := replace(vsSql,'vnContrato',vnContrato); vsSql := replace(vsSql,'vdData_lancamento','to_date(' || || to_char(vdData_lancamento,'dd/mm/ hh24:mi:ss') || || ',' || || 'dd/mm/ hh24:mi:ss'|| ||')' ); execute immediate vsSql into vnValor; exception when others then raise_application_error (-2, 'Formula não validada ' SQLERRM); end; == já tentei assim e não funciona. vsSql := 'select CF_CONTRATO_OPERACAO.VALOR_OPERACAO from CF_CONTRATO_OPERACAO where CF_CONTRATO_OPERACAO.CONTRATO_ID = :vnContrato and CF_CONTRATO_OPERACAO.DATA_LANCAMENTO_ID = :vdData_lancamento'; begin execute immediate vsSql into vnValor; exception when others then raise_application_error (-2, 'Formula não validada ' SQLERRM); end; Estou no aguardo. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] Script para Criar TableSpaces
* UM EXEMPLO select* 'CREATE TABLESPACE '|| d.tablespace_name ||' DATAFILE '|| ||D.FILE_NAME|||| ' SIZE 500M AUTOEXTEND ON NEXT 50M EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO;' *from* dba_data_files d Em 25 de maio de 2010 11:49, Welvis Douglas wel...@stcruz.com.br escreveu: Olá pessoal, Alguém tem algum script para criar tablespaces? Quero passar todas as tablespaces que tenho em uma servidor para um outro servidor, fazer isso na mão é algo meio trabalhoso. Achei uma nota no metalink 1020180.6. Só que este é um Script bem antigo, alguém tem algo parecido para oracle 9i? que trate os meus EXTENT MANAGEMENT LOCAL. Vi também que o pessoal usa o dbms_metadata.get_ddl('TABLESPACE', tablespace_name) para fazer... Alguém sabe de mais alguma forma? Att, Welvis Douglas da Silva Moretto DBA - Oracle Certified (1ZO-042) Fone: (41) 9997-6297 E-mail: welvis_doug...@hotmail.com welvis_douglas%40hotmail.com, wel...@stcruz.com.br welvis%40stcruz.com.br Messenger: welvis_doug...@hotmail.com welvis_douglas%40hotmail.com Mestre em Engenharia de Produção e Sistemas - PUC/PR; Especializando em Banco de Dados - UNOPAR; Especialista Engenharia de Software - UNOPAR; Tecnólogo em Processamento de Dados - FACCAR. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] Ajuda com artigos
Segue. http://www.oracle.com/technology/books/pdfs/book_rep_chap6_ce2.pdf 2010/5/13 Álisson Zimermann alissonz...@gmail.com Boa tarde.. estou em faze de conclusão do meu TC1, preciso relacionar artigos e trabalhos recentes sobre replicação de dados, sendo Oracle ou não... gostaria da ajuda de vocês.. se alguem souber, ou tiver algum artigo no pc, ou em algum link ou qualquer coisa do tipo que seja sobre algum estudo sobre replicação, e que seja atual, eu agradeceria =) Álisson [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] RENOMEAR CONSTRAINTS GERADAS PELO ORACLE
José, Segue um bloco Pl/sql que ira gerar os scripts para renomear suas constraints. Obs: esse bloco é para gerar os alter das PK, para as outras constraints é só mexer no códigoveja se ajuda * BEGIN* *FOR* CR *IN* (*select* * *from* user_constraints u *where* u.constraint_type = 'P') *LOOP* DBMS_OUTPUT.put_line('ALTER TABLE '||CR.TABLE_NAME||' RENAME CONSTRAINT ' ||CR.CONSTRAINT_NAME||' TO PK_'||CR.TABLE_NAME||';'); *END* *LOOP*; *END*; Em 14 de maio de 2010 13:41, Jose Luis Ramos jose.ramos.caj...@gmail.comescreveu: Boa tarde, gostaria de uma ajuda para criação de um script genérico (para rodar numa base qualquer) que recrie as constraints que estejam com nomes do tipo SYS_123456 para um nome usando um padrão. Os padrões que adotei aqui para a equipe de desenvolvimento foi: PRIMARY KEYS: PK_n, onde n é o nome da tabela onde será criada a PK UNIQUE KEYS: UK_n_no, onde n é o nome da tabela onde será criada a constraint de UNIQUE e no é um número seqüencial caso haja mais de uma constraint de UNIQUE para a tabela. FOREIGN KEYS: FK_P_C_NN onde P = NOME DA TABELA PAI C = NOME DA TABELA FILHA NN = Um número seqüencial para garantir que o nome seja único CHECK CONSTRAINT: CHK_P_F, onde P = Nome da tabela onde foi definida a constraint F = Nome do campo sobre o qual é definida a constraint de check Agradeço qualquer ajuda. -- Jose Luis Ramos Jr Campinas - SP Oracle OCP DBA 8i, 9i,10g Fone: 19-37056793 [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] ERRO - FUNÇÃO
Tente assim... Detalhe, precisa aumentar o tamanho da variável v_ret (esta com 10 e a mensagem é maior), outra coisa a função não tem return e não esta retornando nada. * CREATE* *OR* *REPLACE* *FUNCTION* fn_valida_cpf (v_cpf *VARCHAR2*) *RETURN* *VARCHAR2* *IS* v_ret *VARCHAR2*(10); v_d1 *NUMBER*(1); v_d2 *NUMBER*(1); *BEGIN* *IF* LENGTH (v_cpf) 11 *THEN* v_ret := 'CPF DEVE CONTER 11 DÍGITOS!'; *ELSE* *SELECT* *MOD*(( *-- Verifica o primeiro dígito* SUBSTR(v_cpf,1,1) * 1 + SUBSTR(v_cpf,2,1) * 2 + SUBSTR(v_cpf,3,1) * 3 + SUBSTR(v_cpf,4,1) * 4 + SUBSTR(v_cpf,5,1) * 5 + SUBSTR(v_cpf,6,1) * 6 + SUBSTR(v_cpf,7,1) * 7 + SUBSTR(v_cpf,8,1) * 8 + SUBSTR(v_cpf,9,1) * 9),11) *INTO* v_d1 *FROM* DUAL; *IF* v_d1 SUBSTR(v_cpf,10,1) *THEN* v_ret := 'FALSO' ; *ELSE* *select* *MOD*(*MOD*(( *-- Verifica o segundo dígito* SUBSTR(v_cpf,1,1) * 0 + SUBSTR(v_cpf,2,1) * 1 + SUBSTR(v_cpf,3,1) * 2 + SUBSTR(v_cpf,4,1) * 3 + SUBSTR(v_cpf,5,1) * 4 + SUBSTR(v_cpf,6,1) * 5 + SUBSTR(v_cpf,7,1) * 6 + SUBSTR(v_cpf,8,1) * 7 + SUBSTR(v_cpf,9,1) * 8 + v_d1 * 9),11),10) *INTO* v_d2 *FROM* DUAL; *IF* v_d2 SUBSTR(v_cpf,-1,1) *THEN* v_ret := 'FALSO'; *ELSE* v_ret := 'OK'; *END* *IF*; *END* *IF*; *END* *IF*; *EXCEPTION* *WHEN* *OTHERS* *THEN* v_ret := *SQLERRM*; *END* fn_valida_cpf; Em 20 de abril de 2010 11:32, Matheus Malta maltamath...@gmail.comescreveu: PessoALL... Estou tentando criar uma função mas está dando erro de EXCEPTION... Será que alguém pode me ajudar? Segue abaixo o SCRIPT... CREATE OR REPLACE FUNCTION fn_valida_cpf (v_cpf VARCHAR2) RETURN VARCHAR2 IS v_ret VARCHAR2(10); v_d1 NUMBER(1); v_d2 NUMBER(1); BEGIN SELECT MOD(( -- Verifica o primeiro dígito SUBSTR(v_cpf,1,1) * 1 + SUBSTR(v_cpf,2,1) * 2 + SUBSTR(v_cpf,3,1) * 3 + SUBSTR(v_cpf,4,1) * 4 + SUBSTR(v_cpf,5,1) * 5 + SUBSTR(v_cpf,6,1) * 6 + SUBSTR(v_cpf,7,1) * 7 + SUBSTR(v_cpf,8,1) * 8 + SUBSTR(v_cpf,9,1) * 9),11) INTO v_d1 FROM DUAL; IF v_d1 SUBSTR(v_cpf,10,1) THEN v_ret := 'FALSO' ; ELSE select MOD(MOD(( -- Verifica o segundo dígito SUBSTR(v_cpf,1,1) * 0 + SUBSTR(v_cpf,2,1) * 1 + SUBSTR(v_cpf,3,1) * 2 + SUBSTR(v_cpf,4,1) * 3 + SUBSTR(v_cpf,5,1) * 4 + SUBSTR(v_cpf,6,1) * 5 + SUBSTR(v_cpf,7,1) * 6 + SUBSTR(v_cpf,8,1) * 7 + SUBSTR(v_cpf,9,1) * 8 + v_d1 * 9),11),10) INTO v_d2 FROM DUAL; IF v_d2 SUBSTR(v_cpf,-1,1) THEN v_ret := 'FALSO'; ELSE v_ret := 'OK'; END IF; END IF; EXCEPTION WHEN LENGTH(v_cpf) 11 THEN v_ret := 'CPF DEVE CONTER 11 DÍGITOS!'; WHEN OTHERS THEN v_ret := SQLERRM; END fn_valida_cpf; [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] ajuda com dblink - MUITO URGENTE...
Vixi, Não consigo ver uma maneira de alterar a senha sem causar indisponibilidade no sistema, já que são 2 bancos diferentes e terá um delay entre a alteração da senha do usuário e do database link.. Poderia tentar fazer o seguinte.hoje os database links estão apontando para o usuário X, poderia alterar os database links para apontar para outro usuário () com as mesmas permissões que já possui hoje (X), alterar a senha do usuário(X) e voltar a apontar os database links para o usuário() cujo a senha foi alterada. []s Em 11 de fevereiro de 2010 09:31, Raul Francisco Costa F. de Andrade, DBA raulf...@gmail.com escreveu: Versão: Oracle 10.2.0.4, 9i e 8i. Pessoal tive um problema e preciso alterar a senha de um usuário que é utilizado para acessa várias bases nossas através de dblink. é muito complicado recriar todos os dblinks de novo pois causaria indisponibilidade no sistema. Então o que eu precisaria com urgência seria alterar a senha e também no dblink automaticamente. Por favor me ajudem... Tenho urgência. Att. Raul [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
[oracle_br] Parametro na consulta
Pessoal, Preciso de ajuda, alguem sabe qual a finalidade do parametro /*+ opt_param ('_unnest_subquery', 'FALSE') */ na consulta? Obs: a consulta funcionava normalmente no 9i ao migrar para o 10G a consulta ficou muito lenta e me foi sugerido esse parametro... Oracle 10G OPTIMIZER_FEATURES_ENABLE = '10.2.0.4' Obrigado [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Processar DUMP para importação
Será que realmente o dump enviado pelo cliente não é só da estrutura/objetos sem os dados? 2009/12/18 Thiago Daher daher.thi...@yahoo.com.br Boa tarde, grupo. Sou iniciante em Oracle (bem iniciante mesmo) e preciso resolver um problema. Um cliente enviou um arquivo dmp para que eu possa fazer a importação de alguns dados para teste. Instalei o Oracle 10g Express, e a base do cliente é a 10g. Criei um tablespace e um usuário. Quando fui rodar o dump, o PL/SQL Developer criou toda a estrutura do banco de dados (functions, views, tabelas, sequences, etc), mas nenhum dado foi importado. A conta de usuário que utilizei foi SYSTEM, criada na instalação do Oracle. O log de geração do dump diz que foram exportados os registros e o tamanho do arquivo é condizente com isto, pois ele tem 150Mb. Até procurei alguma coisa a respeito, mas não consegui encontrar nada. Imaginei de que estivesse fazendo alguma burrada na hora de parametrizar o processamento do DUMP, e por isso populei uma das tabelas com alguns dados, gerei o DUMP, apaguei a tabela e depois processei o DUMP criado. O dump gerado por mim funciona perfeitamente, mas o mandado pelo cliente nem com reza braba. Será que estou esquecendo de alguma coisa? Se alguém tem alguma idéia do que pode estar acontecendo, me dê uma força, por favor. Um abraço Thiago Daher - Analista Programador Abaixo, seguem as especificações do tablespace e do usuário. TABLESPACE_NAME TSD_CIT BLOCK_SIZE 8192 INITIAL_EXTENT 65536 MIN_EXTENTS 1 MAX_EXTENTS 2147483645 MIN_EXTLEN 65536 STATUS ONLINE CONTENTS PERMANENT LOGGING LOGGING FORCE_LOGGING NO EXTENT_MANAGEMENT LOCAL ALLOCATION_TYPE SYSTEM SEGMENT_SPACE_MANAGEMENT AUTO DEF_TAB_COMPRESSION DISABLED RETENTION NOT APPLY BIGFILE NO Usuário com tablespace default tsd_cit, com cota ilimitada para o namespace em questão. Nenhuma permissão foi feita a esse usuário, exceto create session. [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
[oracle_br] Re: [usuarios_oracle] Ultimo nome de uma string
Nossa...ficou horrível mais funcionou * select* *trim*(*reverse*(substr(*reverse*('campo tabela'),1,instr(*reverse*('campo tabela'),' ') )))*from* dual []s 2009/11/27 Marcos mar...@usinamoreno.com.br Srs bom dia Eu preciso pegar um o ultimo nome de uma string. Ex: SELECT SUBSTR(TRIM(FUNC.NOME),1,INSTR(TRIM(FUNC.NOME),' ') PRIMEIRO_NOME from FUNC Eu preciso pegar tambem o ultimo nome desssa coluna, não quero montar função, tem como fazer semelhante ao INSTR acima? Oracle 10g Marcos [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
[oracle_br] Let's connect on LinkedIn
LinkedIn Fabio Martinez requested to add you as a connection on LinkedIn: -- Carmine Andre, I'd like to add you to my professional network on LinkedIn. - Fabio Martinez Accept invitation from Fabio Martinez http://www.linkedin.com/e/hWdLbEQovS9WxUla2SAnQ1WHcdNiQNfnEPkab4_YW6T/blk/I1608835983_2/pmpxnSRJrSdvj4R5fnhv9ClRsDgZp6lQs6lzoQ5AomZIpn8_cBYPe3ARcPwUc3oNiiZRqQBmm69WmiYOdjsSczkPe3wLrCBxbOYWrSlI/EML_comm_afe/ View invitation from Fabio Martinez http://www.linkedin.com/e/hWdLbEQovS9WxUla2SAnQ1WHcdNiQNfnEPkab4_YW6T/blk/I1608835983_2/39vcPwVdjcUe30SckALqnpPbOYWrSlI/svi/ -- DID YOU KNOW you can showcase your professional knowledge on LinkedIn to receive job/consulting offers and enhance your professional reputation? Posting replies to questions on LinkedIn Answers puts you in front of the world's professional community. http://www.linkedin.com/e/abq/inv-24/ -- (c) 2009, LinkedIn Corporation [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Estou iniciando em Pl\SQL e gostaria de uma ajuda em uma trigger
Ola, Se tiver o nome dos usuário pode ser algo do tipo: IF DELETING THEN IF USER IN ('XXX','YYY') THEN IF :OLD.nome IN ('Igor Alves') then RAISE_APPLICATION_ERROR(-20002,'Usuario Não Pode ser excluido.'); end IF; END IF; END IF; 2009/11/12 Igor Alves igor.al...@gmail.com eu tenho a seguinte condição: IF DELETING THEN IF :OLD.nome IN ('Igor Alves') then RAISE_APPLICATION_ERROR(-20002,'Usuario Não Pode ser excluido.'); end IF; END IF; eu queria fazer para que somente se o usuário for administrador do banco possa delete esse dado, senão aparecer a mensagem assim. Porem não sei como verificar o tipo do usuário em PL\SQL Igor Alves Ciência da Computação - FRB Tel: 2202-5658 / 8812-8670 [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] Executar PROCEDURE automaticamente
Segue exemplo: DBMS_SCHEDULER.CREATE_JOB( job_name = 'apurar_agendamento', job_type = 'STORED_PROCEDURE', job_action = 'COLOQUE_AQUI_O_NOME_DA_PROCEDURE', start_date = SYSTIMESTAMP, repeat_interval = 'FREQ=MINUTELY; INTERVAL=5', enabled = TRUE); 2009/11/12 Rafael Martins rbamart...@gmail.com Pessoal, estou com algumas dúvidas. Preciso fazer com que meu banco execute uma PROCEDURE a cada intervalo de tempo. Pesquisando no GOOGLE encontrei algumas referências a criação de SCHEDULER e a criação de JOB. O que devo criar de fato para essa questão? Inicialmente, tentei criar uma SCHEDULER. Mas, não vi onde inserir a chamada a minha procedure. O script que estou utilizando é esse: BEGIN DBMS_SCHEDULER.CREATE_SCHEDULE ( schedule_name = 'apurar_agendamento', start_date = SYSTIMESTAMP, --data que começará a ser rodada end_date = NULL repeat_interval = 'FREQ=MINUTELY; INTERVAL=5', --em um intervalo de 4 horas comments = 'Comentarios da scheduler'); END; Obrigado a todos. -- Rafael Martins http://rafaelmartinsjava.blogspot.com 0xx(71) 8793-4642 As pessoas que vencem nessa vida são aquelas que procuram as circunstâncias de que precisam e quando não as encontram, as criam [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [oracle_br] NLS_SORT
ok, tem alguma forma de alterar o valor default do parametro para a sessão sem ter que reiniciar o banco? 2009/11/6 Anderson Araujo de Oliveira a13live...@yahoo.com.br Quando vc criou o banco, você não informou o Character Set e o National Character Set, então, vem de lá, já o Sort Binario é o default De: Fabio Martinez mtzfa...@gmail.com mtzfabio%40gmail.com Para: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br Enviadas: Quarta-feira, 4 de Novembro de 2009 20:49:27 Assunto: [oracle_br] NLS_SORT Boa noite, No meu arquivo de inicialização não tenho definido valor para o parametro NLS_SORT, mas fazendo os selects a seguir tenho as seguintes situações: 1 - select * from nls_session_ parameters - o valor para o parametro NLS_SORT é WEST_EUROPEAN 2 - select * from nls_database_ parameter - o valor para o parametro NLS_SORT é BINARY Duvida - Se não foi setado o valor para o parametro na init.ora de onde foi definido esses valores? tem alguma forma de alterar o valor default do parametro para a sessão sem ter que reiniciar o banco? Obrigado [As partes desta mensagem que não continham texto foram removidas] __ Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.com [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ * Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html