BookmarkSubscribeRSS Feed
Quartz | Level 8

Hi, I am trying to use the PROC SQL pass through facility to import a .XML file. Below is an example of something I use for EXCEL files, is there a .XML equivalent?


proc sql noprint;
	connect to excel (path = "\\MyArea\My_File.xls");
		create table contents as
		select *
		from connection to excel (select * from [Contents$]);
	disconnect from excel;

The above code would pick up the tab called "Contents" and create a SAS data set call Contents.



Super User

What version of SAS are you using?


And why do you need SQL Pass Through? Is the file in a Database?


The libname method is the suggested method.

Diamond | Level 26 RW9
Diamond | Level 26

As far as I can tell that is not using pass through.  It is using the libname excel technology.  What libname excel does is setup a SAS library reference to the file, and creates a dataset for each sheet it can find and process, a bit like a proc import for each sheet, with all of the problems associated with importing an Excel file.  It is not pass through.  Pass through is where a set of SQL statements is taken from SAS, and sent to another systems SQL processor, for example:

proc sql;

  connect to oracle (..);

  execute by oracle (select * from abc);


The "select * from abc" is sent to Oracle's SQL parser, hence it can use functions and types in the oracle system, and not ones in the SAS system.


Now your second question, regarding access to XML.  This is done by map files, you can use the free XMLMapper tool from SAS, but basically you need to provide a "spec" for the XML document, i.e. how the file is supposed to be read into SAS - remember an XML file could have multiple datasets!  Have a look here for example:



Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.

If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website. 

Register now!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

Get the $99 certification deal.jpg



Back in the Classroom!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 2 replies
  • 3 in conversation