Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Sql Sever 2005

  1. #1

    Sql Sever 2005

    Salve,
    ho utilizzato il seguente comando per copiare il contenuto di una tabella in un file excel:

    exec master..xp_cmdshell 'bcp "select * from NomeTAbella" queryout D:\data_file.xls -c -C ansi -T -S mioServer'
    all'interno di una procedura. Tutto ok eccetto per una cosuccia.
    Ho una colonna CAP il cui contenuto è del tipo 96100, 00010 , 50016 e così via...
    Il problema è che nel file excel, mi ritrovo nel caso di 00010 10, qualcuno sa dirmi come posso ovviare a ciò, sempre utilizzando il comando bcp o qualche altro comando ... per copiare contenuto tabella in file excel da dentro una procedura senza ricorrere ai SISS?!!

    grazie in anticipo...

  2. #2
    Cambia la query in SELECT *, CAST(Cap as char(5)) as CAP2.
    Di fatto nel file excel ti ritroverai due colonne: una con il CAP corretto (cap2) e una con quello errato.
    Se vuoi evitare la doppia colonna, allora devi elencare tutti i campi: SELECT Campo1, Campo2, CAST(Cap as char(5)) as CAP, Campo3, ..., Campo n .

    Facci sapere..

  3. #3
    ho provato a fare come hai detto ma non funziona, funzionerebbe se riuscissi a dirgli che quel campo lo deve formattare come "testo" e non come categoria "generale". Infatti se si apre un foglio excel e si comincia ad inserire in una cella 00189 excel toglie i primi 2 zeri e lascia nella cella solo 189 se io formatto la cella come testo allora mi lascia 00189...
    Il problema è questo ma non so come risolverlo... comunque grazie

  4. #4
    Perdonami ma mi son reso conto di aver scritto una castroneria. Il campo CAP di un database è sempre e comunque di tipo testo, quindi l'ulteriore conversione utilizzando la funzione CAST non avrebbe comunque senso.

    Castronerie a parte non penso di poterti aiutare. Sull'MSDN, relativamente a quella funzione, non ti viene segnalato nessun parametro da dover aggiungere per formattare il foglio excel in una certa maniera??

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.