Connection strings for Excel(OLEDB/ODBC)
원본 : http://www.connectionstrings.com/excel
Connection strings for Excel
OLE DB providers for Excel
.NET libraries for Excel
- .NET Framework Data Provider for OLE DB - OleDbConnection
- .NET Framework Data Provider for ODBC - OdbcConnection
- .NET xlReader for Microsoft Excel - ExcelConnection
ODBC drivers for Excel
Developers Community
Find solutions and post questions regarding connection string related issues.
Forum for ExcelMicrosoft Jet OLE DB 4.0
Standard
Extended Properties="Excel 8.0;HDR=Yes;IMEX=1";
Standard alternative
Try this one if the one above is not working. Some reports that Excel 2003 need the exta OLEDB; section in the beginning of the string.
Extended Properties="Excel 8.0;HDR=Yes;IMEX=1";
Important note!
The quota " in the string needs to be escaped using your language specific escape syntax.
c#, c++ \"
VB6, VBScript ""
xml (web.config etc) "
or maybe use a single quota '.
"HDR=Yes;" indicates that the first row contains columnnames, not data. "HDR=No;" indicates the opposite.
"IMEX=1;" tells the driver to always read "intermixed" (numbers, dates, strings etc) data columns as text. Note that this option might affect excel sheet write access negative.
SQL syntax "SELECT [Column Name One], [Column Name Two] FROM [Sheet One$]". I.e. excel worksheet name followed by a "$" and wrapped in "[" "]" brackets.
Check out the [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel] located registry REG_DWORD "TypeGuessRows". That's the key to not letting Excel use only the first 8 rows to guess the columns data type. Set this value to 0 to scan all rows. This might hurt performance. Please also note that adding the IMEX=1 option might cause the IMEX feature to set in after just 8 rows. Use IMEX=0 instead to be sure to force the registry TypeGuessRows=0 (scan all rows) to work.
If the Excel workbook is protected by a password, you cannot open it for data access, even by supplying the correct password with your connection string. If you try, you receive the following error message: "Could not decrypt file."
ACE OLEDB 12.0
Excel 97-2003 Xls files with ACE OLEDB 12.0
You can use this connection string to use the Office 2007 OLEDB driver (ACE 12.0) to connect to older 97-2003 Excel workbooks.
Extended Properties="Excel 8.0;HDR=YES";
"HDR=Yes;" indicates that the first row contains columnnames, not data. "HDR=No;" indicates the opposite.
.NET Framework Data Provider for OLE DB
Use an OLE DB provider from .NET
See the respective OLEDB provider's connection strings options. The .net OleDbConnection will just pass on the connection string to the specified OLEDB provider. Read more here.
Microsoft Excel ODBC Driver
Standard
DefaultDir=c:\mypath;
SQL syntax "SELECT [Column Name One], [Column Name Two] FROM [Sheet One$]". I.e. excel worksheet name followed by a "$" and wrapped in "[" "]" brackets.
Specify ReadOnly
[Microsoft][ODBC Excel Driver] Operation must use an updateable query. Use this connection string to avoid the error.
ReadOnly = 0 specifies the connection to be updateable.
Microsoft Excel 2007 ODBC Driver
.NET Framework Data Provider for ODBC
Use an ODBC driver from .NET
See the respective ODBC driver's connection strings options. The .net OdbcConnection will just pass on the connection string to the specified ODBC driver. Read more here.
.NET xlReader for Microsoft Excel
Excel file with header row
Excel file without header row
'Programming > C#' 카테고리의 다른 글
Sorting (0) | 2013.10.02 |
---|---|
C# 에서 콘솔 프로그램을 숨기는 방법 ( Using ProcessStartInfo Class ) (0) | 2013.07.23 |
Excel Data Reader - Read Excel files in .NET (0) | 2013.06.28 |
Excel 2007,2003 OLEDB 연결 문자열 (0) | 2012.12.16 |
C#에서 OLEDB를 이용한 엑셀(EXCEL)파일 읽기 및 쓰기 (0) | 2012.12.16 |