

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Access Connectivity Engine\Engines\Excel HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Jet\4.0\Engines\Excel HKEY_LOCAL_MACHINE\Software\Microsoft\Jet\4.0\Engines\Excel ”Īs a side note, you aren’t allowed to change the registry settings…īut if you want to change them, here is where to find them: If this eight row sampling is all numeric, then setting IMEX=1 will not convert the default datatype to Text it will remain numeric.
#Odbc excel column type driver
The ISAM driver by default looks at the first eight rows and from that sampling determines the datatype. For this to work reliably, you may also have to modify the registry setting, TypeGuessRows=8. This forces mixed data to be converted to text. In this state, the registry setting ImportMixedTypes=Text will be noticed. “NOTE: Setting IMEX=1 tells the driver to use Import mode. IMEX is set to 1, but if we investigate further we find following: To specify Import Mode, add IMEX=1 to the value of Extended Properties in the connection string of the Excel connection manager in the Properties window.” You can modify this behavior of the Excel driver by specifying Import Mode. (In a tie, the numeric type wins.) Most cell formatting options in the Excel worksheet do not seem to affect this data type determination. When a column appears to contain mixed data types, especially numeric data mixed with text data, the driver decides in favor of the majority data type, and returns null values for cells that contain data of the other type. The Excel driver reads a certain number of rows (by default, 8 rows) in the specified source to guess at the data type of each column. The Excel source component in SSIS determines the input data types by itself, based on the first 8 rows of the Excel file.Some research on MSDN reveals the following information: The first question is, why is the value given as a float when the input clearly shows that the input data are a combination of alphanumeric and numeric values? This happens even when we set the fixed outcome of the source to be alphanumeric:
#Odbc excel column type code
The Excel source suggests that the data type of the CODE column is numeric (float), as shown below. When we try to load this into our database, we notice that rows 9 to 12 are not loaded correctly and are shown as null values. The first thing we notice is that the CODE column consists of two kinds of data types: numeric and alphanumeric (rows 9 to 12). You then try to change the input data type in the Excel source component, but you can’t seem to get the output you want. When you load the data you find that the data type is not aligning as expected and some of the rows are not filled with the data provided. Imagine your client gives you an Excel file as the SSIS source for a new project.
