File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -4223,14 +4223,20 @@ public override SemanticInfo VisitGraphToTableOperator(GraphToTableOperator node
42234223 }
42244224 else if ( node . OutputClause . Count == 2 )
42254225 {
4226-
42274226 var nodesTableClause = node . OutputClause . FirstOrDefault ( oc => oc . Element . EntityKeyword . Kind == SyntaxKind . NodesKeyword ) ? . Element ;
42284227 var edgesTableClause = node . OutputClause . FirstOrDefault ( oc => oc . Element . EntityKeyword . Kind == SyntaxKind . GraphEdgesKeyword ) ? . Element ;
4228+
42294229 if ( nodesTableClause == null || edgesTableClause == null )
42304230 {
42314231 diagnostics . Add ( DiagnosticFacts . GetMissingGraphEntityType ( ) . WithLocation ( node . OutputClause ) ) ;
42324232 return new SemanticInfo ( diagnostics ) ;
42334233 }
4234+
4235+ if ( nodesTableClause . AsClause == null )
4236+ diagnostics . Add ( DiagnosticFacts . GetMultipleGraphOutputsRequireAliases ( ) . WithLocation ( nodesTableClause ) ) ;
4237+
4238+ if ( edgesTableClause . AsClause == null )
4239+ diagnostics . Add ( DiagnosticFacts . GetMultipleGraphOutputsRequireAliases ( ) . WithLocation ( edgesTableClause ) ) ;
42344240
42354241 var nodesTable = VisitGraphToTableNodesClause ( nodesTableClause , leftGraph ) ;
42364242 var edgesTable = VisitGraphToTableEdgesClause ( edgesTableClause , leftGraph ) ;
Original file line number Diff line number Diff line change @@ -774,9 +774,20 @@ public override void VisitScanOperator(ScanOperator node)
774774 BindNode ( node ) ;
775775 }
776776
777+ public override void VisitRowSchema ( RowSchema node )
778+ {
779+ _binder . BindColumnDeclarations ( node . Columns ) ;
780+ }
781+
782+ public override void VisitEvaluateRowSchema ( EvaluateRowSchema node )
783+ {
784+ _binder . BindColumnDeclarations ( node . Columns ) ;
785+ }
786+
777787 public override void VisitInlineExternalTableExpression ( InlineExternalTableExpression node )
778788 {
779789 node . Parameters . Accept ( this ) ;
790+ node . Schema ? . Accept ( this ) ;
780791
781792 var oldLocalScope = _binder . _localScope ;
782793
@@ -785,7 +796,6 @@ public override void VisitInlineExternalTableExpression(InlineExternalTableExpre
785796 _binder . _localScope = new LocalScope ( oldLocalScope ) ;
786797 if ( node . Schema != null )
787798 {
788- _binder . BindColumnDeclarations ( node . Schema . Columns ) ;
789799 _binder . AddDeclarationsToLocalScope ( node . Schema . Columns ) ;
790800 }
791801 node . PartitionClause ? . Accept ( this ) ;
Original file line number Diff line number Diff line change @@ -1112,6 +1112,11 @@ public static Diagnostic GetInlineExternalTableDeltaRequiresSingleRootUri()
11121112 return new Diagnostic ( "KS272" , "Inline external table kind=delta requires exactly one root URI." ) ;
11131113 }
11141114
1115+ public static Diagnostic GetMultipleGraphOutputsRequireAliases ( )
1116+ {
1117+ return new Diagnostic ( "KS273" , "Multiple graph outputs require aliases." ) ;
1118+ }
1119+
11151120 #region command diagnostics
11161121 public static Diagnostic GetMissingCommand ( )
11171122 {
You can’t perform that action at this time.
0 commit comments