Bom dia Diones, primeiramente obrigado pela resposta...
bem, é o seguinte: a variável v_num_empresas receberá o valor que dirá quantas vezes no loop executará a string que está em v_sql para criar as tablespaces. O que talvez não esteja certo é a maneira como estou pedindo os dados de input. O que o script deveria estar fazendo, é que sempre no execute emmediate ele pedisse o valor de &empresa mas não é o que acontece. Se eu digitar a string teste para o valor de &empresa, ele cria a tablespace ri_index_teste mas na segunda vez, ele tenta criar a mesma tablespace, pois o valor de &empresa não foi pedido novamente e ele está assumindo que é teste. Att, Flavio On 7/14/05, Diones Kleber Machado da Cruz <[EMAIL PROTECTED]> wrote: > Bom dia Flavio, > > Pelo que percebi a pergunta referente a &Empresa esta fora do loop, > coloque na linha abaixo do FOR. > > antes > ... > BEGIN > v_num_empresas := &num_empresas; > FOR i IN 1..v_num_empresas LOOP > ... > > depois > ... > BEGIN > FOR i IN 1..v_num_empresas LOOP > v_num_empresas := &num_empresas; > ... > > acredito que isto resolva... > Sds, > > Diones Kleber Cruz > DBA Oracle 9i > Desenvolvedor de Sistemas Senior > [EMAIL PROTECTED] > [EMAIL PROTECTED] > ---------------------------------------- > JOSAPAR - ARROZ TIO JOÃO > Joaquim Oliveira S/A Participações > Fone: (53) 3284-1044 > > > > ----- Mensagem original ----- > > De: [email protected] > > [SMTP:[EMAIL PROTECTED] Em nome de Flavio > Louzada > > Enviada em: quarta-feira, 13 de julho de 2005 17:08 > > Para: [email protected] > > Assunto: [oracle_br] Criar tablespace dinamicamente > > > > Pessoal, > > > > estou precisando criar um script que cria x tablespaces. O nome da > > tablespace já é pré definida com um prefixo e será concatenado com o > > nome da empresa, por isso o script pede a quantidade de empresas e > > entra num loop para que a tablespace seja criada, o problema é que > > após a primeira vez, o script deveria pergunta o valor da variável > > &empresa novamente e não é o que acontece, portanto o valor é sempre o > > mesmo e da erro dizendo que a tablespace já existe, pois foi criada na > > primeira passagem do loop. > > > > Segue o código abaixo: > > > > DECLARE > > v_num_empresas VARCHAR2(4000); > > path VARCHAR2(4000); > > v_sql VARCHAR2(4000); > > x VARCHAR2(4000); > > BEGIN > > v_num_empresas := &num_empresas; > > FOR i IN 1..v_num_empresas LOOP > > v_sql := 'SELECT ' || '''&EMPRESA''' || ' FROM dual'; > > EXECUTE IMMEDIATE v_sql INTO x; > > > > EXECUTE IMMEDIATE 'CREATE TABLESPACE RI_INDEX_' || '&&EMPRESA' || > > ' NOLOGGING ' || > > 'DATAFILE ''D:\ORACLE\ORADATA\RID\RI_INDEX_' || > '&&EMPRESA' || > > '.ORA''' || 'SIZE 1M AUTOEXTEND ON NEXT 50M > > ONLINE > > PERMANENT > > EXTENT MANAGEMENT LOCAL AUTOALLOCATE > > BLOCKSIZE 16K > > SEGMENT SPACE MANAGEMENT MANUAL'; > > > > END LOOP; > > END; > > / > > > > Desde já agradeço... > > > > Att, > > > > Flavio. > > > > > > > ______________________________________________________________________ > > > > Cancelar assinatura...: > [EMAIL PROTECTED] > > Moderadores da lista....:Dorian Anderson Soutto [EMAIL PROTECTED] > > Fernanda Damous [EMAIL PROTECTED] > > Alisson Aguiar [EMAIL PROTECTED] > > > ______________________________________________________________________ > > http://br.groups.yahoo.com/group/oracle_br/ > > > ______________________________________________________________________ > > > > Sair da Lista...: [EMAIL PROTECTED] > > Links do Yahoo! Grupos > > > > > > > > > > > > > > > > > ______________________________________________________________________ > > Pesquisar Histórico: > http://www.mail-archive.com/[email protected]/ > Moderadores da lista....:Dorian Anderson Soutto [EMAIL PROTECTED] > Fernanda Damous [EMAIL PROTECTED] > Alisson Aguiar [EMAIL PROTECTED] > ______________________________________________________________________ > http://br.groups.yahoo.com/group/oracle_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: > [EMAIL PROTECTED] > > O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do > Yahoo!. ______________________________________________________________________ Pesquisar Histórico: http://www.mail-archive.com/[email protected]/ Moderadores da lista....:Dorian Anderson Soutto [EMAIL PROTECTED] Fernanda Damous [EMAIL PROTECTED] Alisson Aguiar [EMAIL PROTECTED] ______________________________________________________________________ http://br.groups.yahoo.com/group/oracle_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: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
