Esempio n. 1
0
 private string QuoteIdentifier(string name)
 {
     if (sqlIdentifier.NeedToQuote(name))
     {
         return(sqlIdentifier.QuoteIdentifier(name));
     }
     return(name);
 }
Esempio n. 2
0
            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);
            }
Esempio n. 3
0
 protected override void WriteName(string name)
 {
     if (SqlIdentifier.NeedToQuote(name))
     {
         sb.Append(SqlIdentifier.QuoteCompoundIdentifier(name));
     }
     else
     {
         sb.Append(name);
     }
 }
Esempio n. 4
0
            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);
                }
            }
Esempio n. 5
0
            //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);
                        }
                    }
                }
            }