State investigando da un po 'e continuate a colpire un muro di mattoni. Sto importando da file xls in tabelle temporanee tramite il comando OpenRowset. Ora ho un problema in cui sto cercando di importare una determinata colonna con valori di intervallo, ma i più comuni sono i seguenti. Colonne strutturate come numeri lunghi, 15598 e alcune colonne come stringhe, 15598-E.Il comando OpenRowSet in TSQL restituisce NULLS
Ora l'openrowset sta leggendo la versione della stringa senza problemi ma sta segnalando la versione del numero come NULL. Ho letto (http://www.sqldts.com/254.aspx) che openrowset ha quel problema e l'autore parla dell'implementazione di "HDR = YES; IMEX = 1" nella stringa di query ma non funziona affatto per me.
Qualcuno di voi ha incontrato questo?
Solo qualche informazione in più. Non può fare questo con il motore a reazione (Microsoft.Jet.OLEDB.4.0) quindi questo è ciò che la mia interrogazione si presenta come:
SELECT *
FROM
OPENROWSET('MSDASQL'
, 'Driver=Microsoft Excel Driver (*.xls);HDR=YES;IMEX=1;DBQ=C:\ImportFile.xls;'
, 'SELECT * FROM [Sheet1$]')
Ora sai perché le persone ETL odiano Excel per le importazioni! – HLGEM