示例#1
0
        public string GetSql()
        {
            Template result = TemplateLibrary.Select;

            result.Append(SnippetLibrary.Table(this.TableName, this.Format, this.TableAlias));
            result.Append(SnippetLibrary.Columns(this.Columns.GetSql(this.TableAlias)));

            if (this.Join.Count > 0)
            {
                string joinTable = string.IsNullOrEmpty(this.TableAlias) ? this.TableName : this.TableAlias;
                result.Append(SnippetLibrary.Join(this.Join.GetSql(joinTable)));
            }
            if (this.Where.Count > 0)
            {
                result.Append(SnippetLibrary.Where(this.Where.GetSql(this.TableAlias)));
            }
            if (this.GroupBy.Count > 0)
            {
                result.Append(SnippetLibrary.GroupBy(this.GroupBy.GetSql(this.TableAlias)));
            }
            if (this.OrderBy.Count > 0)
            {
                result.Append(SnippetLibrary.OrderBy(this.OrderBy.GetSql(this.TableAlias)));
            }

            return(result.GetSql(this.Format));
        }
示例#2
0
        public string GetSql(bool endOfStatement = true)
        {
            var table = Reflection.GetTableName <T>();

            var result = TemplateLibrary.Select;

            result.Append(SnippetLibrary.Table(table, TableAlias));
            result.Append(SnippetLibrary.Columns(Columns.GetSql(TableAlias)));

            if (Join.Count > 0)
            {
                var joinTable = string.IsNullOrEmpty(TableAlias) ? table : TableAlias;
                result.Append(SnippetLibrary.Join(Join.GetSql(joinTable)));
            }

            if (Where.Count > 0)
            {
                result.Append(SnippetLibrary.Where(Where.GetSql(TableAlias)));
            }
            if (GroupBy.Count > 0)
            {
                result.Append(SnippetLibrary.GroupBy(GroupBy.GetSql(TableAlias)));
            }
            if (OrderBy.Count > 0)
            {
                result.Append(SnippetLibrary.OrderBy(OrderBy.GetSql(TableAlias)));
            }

            return(result.GetSql(endOfStatement));
        }
示例#3
0
        public string GetSql(bool EndOfStatement = true)
        {
            string table = Reflection.GetTableName <T>();

            ITemplate result = TemplateLibrary.Select;

            result.Append(SnippetLibrary.Table(table, this.TableAlias));
            result.Append(SnippetLibrary.Columns(this.Columns.GetSql(this.TableAlias)));

            if (this.Join.Count > 0)
            {
                string joinTable = string.IsNullOrEmpty(this.TableAlias) ? table : this.TableAlias;
                result.Append(SnippetLibrary.Join(this.Join.GetSql(joinTable)));
            }
            if (this.Where.Count > 0)
            {
                result.Append(SnippetLibrary.Where(this.Where.GetSql(this.TableAlias)));
            }
            if (this.GroupBy.Count > 0)
            {
                result.Append(SnippetLibrary.GroupBy(this.GroupBy.GetSql(this.TableAlias)));
            }
            if (this.OrderBy.Count > 0)
            {
                result.Append(SnippetLibrary.OrderBy(this.OrderBy.GetSql(this.TableAlias)));
            }

            return(result.GetSql(EndOfStatement));
        }
示例#4
0
        public void TemplateEndOfStatementSelect()
        {
            ITemplate t = TemplateLibrary.Select;

            t.Append(SnippetLibrary.Table("users"),
                     SnippetLibrary.Columns("*"),
                     SnippetLibrary.Where("age>=18"),
                     SnippetLibrary.OrderBy("age ASC"));
            string sql = t.GetSql(false);

            Assert.AreEqual(sql, "SELECT * FROM [users] WHERE age>=18 ORDER BY age ASC");
        }
示例#5
0
        public void TemplateSelect()
        {
            Template t = TemplateLibrary.Select;

            t.Append(SnippetLibrary.Table("users", global::SqlBuilder.Format.MsSQL),
                     SnippetLibrary.Columns("*"),
                     SnippetLibrary.Where("age>=18"),
                     SnippetLibrary.OrderBy("age ASC"));
            string sql = t.GetSql(global::SqlBuilder.Format.MsSQL);

            Assert.AreEqual(sql, "SELECT * FROM [users] WHERE age>=18 ORDER BY age ASC;");
        }