private string QuoteIdentifier(string name) { if (sqlIdentifier.NeedToQuote(name)) { return(sqlIdentifier.QuoteIdentifier(name)); } return(name); }
internal override SqlRow VisitRow(SqlRow row) { int num = 0; int count = row.Columns.Count; while (num < count) { SqlColumn key = row.Columns[num]; if (num > 0) { sb.Append(", "); } Visit(key.Expression); string name = key.Name; string str2 = InferName(key.Expression, null); if (name == null) { name = str2; } if ((name == null) && !names.TryGetValue(key, out name)) { name = "C" + names.Count; names[key] = name; } if (key.Expression != null && key.Expression.NodeType == SqlNodeType.FunctionCall && ((SqlFunctionCall)key.Expression).Name.StartsWith("GEN_ID")) { name = null; } if (!string.IsNullOrEmpty(str2)) { str2 = SqlIdentifier.UnquoteIdentifier(str2); } if (name != str2 && !string.IsNullOrEmpty(name)) { if (!string.IsNullOrEmpty(str2)) { sb.Append(" AS "); } if (SqlIdentifier.NeedToQuote(name)) { WriteName(SqlIdentifier.QuoteIdentifier(name)); } else { WriteName(name); } } num++; } return(row); }
protected override void WriteName(string name) { if (SqlIdentifier.NeedToQuote(name)) { sb.Append(SqlIdentifier.QuoteCompoundIdentifier(name)); } else { sb.Append(name); } }
protected override void WriteName(string name) { var index = name.LastIndexOf('.'); var columnName = index > 0 ? name.Substring(index + 1) : name; if (SqlIdentifier.NeedToQuote(columnName)) { sb.Append(SqlIdentifier.QuoteCompoundIdentifier(columnName)); } else { sb.Append(name); } }
//internal override SqlRow VisitRow(SqlRow row) //{ // int num = 0; // int count = row.Columns.Count; // while (num < count) // { // SqlColumn key = row.Columns[num]; // if (num > 0) // { // sb.Append(", "); // } // num++; // } // return row; //} internal override void VisitRowColumn(SqlColumn key) { Visit(key.Expression); string name = key.Name; string str2 = InferName(key.Expression, null); if (name == null) { name = str2; } if ((name == null) && !names.TryGetValue(key, out name)) { name = "C" + names.Count; names[key] = name; } if (key.Expression != null && key.Expression.NodeType == SqlNodeType.FunctionCall && ((SqlFunctionCall)key.Expression).Name.StartsWith("GEN_ID")) { name = null; } if (!string.IsNullOrEmpty(str2)) { str2 = SqlIdentifier.UnquoteIdentifier(str2); } if (name != str2 && !string.IsNullOrEmpty(name)) { if (string.IsNullOrEmpty(str2) && key.Expression == null) { this.WriteName(name); } else { sb.Append(" AS "); if (SqlIdentifier.NeedToQuote(name)) { WriteName(SqlIdentifier.QuoteIdentifier(name)); } else { WriteName(name); } } } }