Table of contents
TOC
Collapse the table of content
Expand the table of content

IMPORT PACKAGE (U-SQL)

Michael Rys|Last Updated: 5/15/2018
|
4 Contributors

The IMPORT PACKAGE statement will import all the assembly references, variable declarations and resource deployments exported by the specified package. The package identifier will be resolved in the static context of its invocation and can refer to a package in the current account or a different Azure Data Lake Analytics account. The optional arguments can be used inside the package.

If conflicting assemblies or references are being referenced, imported or deployed, errors are raised once a package gets imported in the main U-SQL script.

Syntax
Import_Package_Statement :=                                                                              
    'IMPORT' 'PACKAGE' Global_Identifier ['(' [Argument_List] ')'] [Package_Alias].
Package_Alias := 'AS' Package_Name_Alias.
Package_Name_Alias := Quoted_or_Unquoted_Identifier.

The optional package alias must be used when referring to variables imported from the given package.

Examples

The following script uses the now the previously defined package XMLorJSON from database TestReferenceDB with the parameter xml and parses the XML file that was provided in the package's @xmlfile variable. Please note that the file deployment will occur as well, but is not really required for this script to work.

IMPORT PACKAGE TestReferenceDB.dbo.XMLorJSON("xml") AS xmlpackage;

USING xml = Microsoft.Analytics.Samples.Formats.Xml;

// Currently the EXTRACT FROM and OUTPUT TO clauses do not support package variables.
// Therefore we need to rename them.
DECLARE @input = xmlpackage.@xmlfile;

@configdata =
EXTRACT option1 string,
        option2 string,
        option3 string
FROM @input
USING new xml.XmlDomExtractor("/config", 
                                new SqlMap<string,string>{
                                    {"option1", "option1"},
                                    {"option2", "option2"}, 
                                    {"option3", "option3"}});

@res =
SELECT xmlpackage.@format AS format,
        *
FROM @configdata;

OUTPUT @res
TO "/output/packexample.csv"
USING Outputters.Csv();

See Also

© 2018 Microsoft