Pergunta : Os dados da tabela da exportação de PL/SQL a .csv arquivam e conservam; lanç Excel dentro de PL/SQL e da lima conservada carga de .csv

Eu estou usando PL/SQL (não SQL*PLUS). o

I quer exportar a tabela inteira e conservá-la como uma lima de .csv using o código de PL/SQL. (I que dirige Oracle 9i.) o
I quer lanç Excel e para mandar Excel carregar a lima conservada de .csv (sem ter que manualmente o abrir em Excel) using PL/SQL code.

I tentaram using o comando do SPOOL, mas parece que o SPOOL é um comando de SQL*PLUS-only desde que eu não posso lhe começ às supressões existentes do código de work.

My todos os registros da tabela, a seguir introduz os registros resultantes de uma pergunta SELETA no table.
I um pouco não teria que enganar ao redor com criação de um procedimento ou de uma função para fazer isto. Eu quero simplesmente uma exportação de .csv a um nome de arquivo de minha escolha, a seguir, uma vez que está conservado (em minha máquina local, não no usuário), eu quero o código lanç Excel e abrir a lima que de .csv eu apenas conservei. Eu gostaria de adicionar o certificado para fazer este que segue a conclusão da amostra de meu certificado below.

I li alguns comentários que este pode ser feito com ODBC ou VELHO, mas os exemplos dados são longos e desconcertantes, como são os exemplos que eu vi fazer isto criando um procedimento.  Eu não me ocupo usar qualqueras um aproximações, mas eu não tenho nenhuma idéia como codificá-las, ou setup caso necessário outras opções de Oracle, para consegui-las trabalhar. Eu coneto a Oracle a base de dados com uma conexão existente de ODBC, se esse matters.

It parecer como este é uma tarefa um pouco direta (e certamente não incomun), mas após ter lido um número de respostas na EE e AskTom, mim não pode encontrar qualquer coisa esse works.
---------------------------------------nome do
Table: KSEND
Here é um trecho do certificado da INSERÇÃO:

INSERT em KSEND
(f.alpha_5 DISTINTOS SELETOS,
f.alpha_6,
f.ss_num,
substituem (f.last_name, “,”, '') como last_name,
substituem (f.first_name, “,”, '') como first_name,
f.middle_initial,
f.birth_date,
f.gender_cd,
f.marital_stat_cd,
substituem (f.addr_1, “,”, '') como addr_1,
substituem (f.addr_2, “,”, '') como addr_2,

--seguido por 18 mais campos---

de f employee_copy, r
do system_lookup ONDE (f.emp_stat_cd = “A” AND
(f.alpha_6 = “NORMA” OU f.alpha_6 = “IMPR ") AND
f.decimal_2 NÃO É NULO));
class= do

Resposta : Os dados da tabela da exportação de PL/SQL a .csv arquivam e conservam; lanç Excel dentro de PL/SQL e da lima conservada carga de .csv

Conservar o CSV a uma lima no sistema de arquivo de usuário de base de dados é consideravelmente direto using UTL_FILE.

Você realmente não precisa mesmo a tabela do temp.

Apenas codificar o seleto using concatinations da corda:

criar ou substituir o my_proc do procedimento
é
sendo


para i dentro (f.alpha5 distinto seleto || “,” || f.alpha_6 || “,” ||  f.ss_num… como o myRow de…) laço
      utl_file.put_line (i.myRow);

laço da extremidade;

extremidade;
/

Eu não sei de uma maneira de lanç em linha reta Excel de PL/SQL.  Você pôde poder criar um procedimento armazenado de Java para fazer isto.

Eu estou supor que você tem alguma sorte da relação da aplicação que executará o procedimento armazenado para criar o CSV.  Não pode isso fazer uma chamada do ósmio para lanç um programa?
Outras soluções  
 
programming4us programming4us