DECLARE @<%= name %> table (
  <%= _.map( schema, function( sqlType, column ) {
      return "[" + column + "] " + sqlType;
  } ).join( ", " ) %>
)
<% if ( hasData ) { %>
  DECLARE @<%= name %>Idoc int
  EXEC sp_xml_preparedocument @<%= name %>Idoc OUTPUT, @<%= name %>Xml
  INSERT @<%= name %> SELECT <%= Object.keys( schema )
    .map( function( column ) { return "[" + column + "]"; } )
    .join(", ") %>
  FROM OPENXML(@<%= name %>Idoc, '//row', 1) WITH (
    <%= _.map( schema, function( sqlType, column ) {
        return "[" + column + "] " + sqlType;
    } ).join( ", " ) %>
  );
  EXEC sp_xml_removedocument @<%= name %>Idoc;
<% } %>
