How to get the sheet names in an Excel file using SQL Sever 2005?
Please be noted that:
- There is no front-end (C#, VB, PHP, etc.);
- I am trying to get the sheet names using nothing but SQL Server 2005 alone.
Thanks.
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
You can’t. There are two routes to reading data from Excel. One is the COM/OLE automation route which would allow you to enumerate through worksheets in a workbook. That requires a procedural language which TSQL won’t do. I don’t even think if you allowed CLR methods into the mix, you’d be able to access the Office libraries as they aren’t on the BCL list.
The second route would be to use the Jet driver via openquery in this case but as part of the setup, you need to explicitly define the file and worksheet to access. You can forgo listing the worksheet name but even then, Excel does not expose metadata about worksheets to the best of my divination.
I’ll delete this answer if someone knows another way but having sliced this problem in a number of ways, I haven’t come up with an answer that doesn’t boil down to one of the two aforementioned approaches.