Exemple #1
0
 public override void Visit(SqlTableRefExpression codeObject)
 {
     using (_stringBuilder.CreateIndentationContext())
     {
         _stringBuilder
         .AppendIndentedLine()
         .Append(codeObject.Sql);
     }
 }
 public override void Visit(SqlTableRefExpression codeObject)
 {
     Format(codeObject);
 }
Exemple #3
0
        private List <RawTableJoinRow> GetTableOrViewRows(Dictionary <string, Table> tables, SqlTableRefExpression tableRef)
        {
            List <RawTableJoinRow> rowList;
            var name          = Helper.GetAliasName(tableRef);
            var qualifiedName = Helper.GetQualifiedName(tableRef.ObjectIdentifier);

            if (tables.ContainsKey(qualifiedName))
            {
                var table = tables[qualifiedName];
                rowList = GetAllTableRows(table, name);
            }
            else if (((MemoryDbConnection)Command.Connection).TempTables.ContainsKey(qualifiedName))
            {
                var table = ((MemoryDbConnection)Command.Connection).TempTables[qualifiedName];
                rowList = GetAllTableRows(table, name);
            }
            else if (Database.Views.ContainsKey(qualifiedName))
            {
                var view = Database.Views[qualifiedName];
                rowList = GetAllViewRows(view, name);
            }
            else if (_CommonTableList.Any(t => t.FullName == qualifiedName))
            {
                var table = _CommonTableList.Single(t => t.FullName == qualifiedName);
                rowList = GetAllTableRows(table, name);
            }
            else
            {
                throw new SqlInvalidObjectNameException(name);
            }

            return(rowList);
        }
Exemple #4
0
 public static string GetAliasName(SqlTableRefExpression tableRef)
 {
     return(tableRef.Alias == null?GetQualifiedName(tableRef.ObjectIdentifier) : tableRef.Alias.Value);
 }