当前位置: 首页>>代码示例>>C#>>正文


C# SqlWriter.WriteStartWhere方法代码示例

本文整理汇总了C#中SqlWriter.WriteStartWhere方法的典型用法代码示例。如果您正苦于以下问题:C# SqlWriter.WriteStartWhere方法的具体用法?C# SqlWriter.WriteStartWhere怎么用?C# SqlWriter.WriteStartWhere使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SqlWriter的用法示例。


在下文中一共展示了SqlWriter.WriteStartWhere方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: WriteUnion_WhenSelectWithJoin_WritesUnionStatement

        public void WriteUnion_WhenSelectWithJoin_WritesUnionStatement()
        {
            StringBuilder builder = new StringBuilder();
            using (SqlWriter writer = new SqlWriter(builder))
            {
                writer.WriteStartSelect();
                writer.WriteColumn("u", "Id", null);
                writer.WriteColumn("u", "Name", null);
                writer.WriteColumn("p", "Age", null);
                writer.WriteStartFrom();
                writer.WriteTable("Users", "u");
                writer.WriteStartJoin(SqlJoinType.Inner);
                writer.WriteTable("Profiles", "p");
                writer.WriteStartOn();
                writer.WriteColumn("u", "Id", null);
                writer.WriteOperator(SqlBinaryOperator.Equal);
                writer.WriteColumn("p", "UserId", null);
                //writer.WriteStartWhere();
                //writer.WriteColumn("u", "Age", null);
                //writer.WriteOperator(SqlBinaryOperator.LessThanOrEqual);
                //writer.WriteValue(18);
                writer.WriteEndSelect();

                Assert.AreEqual(SqlWriterState.EndSelect, writer.WriteState);
                writer.WriteUnion();
                Assert.AreEqual(SqlWriterState.Union, writer.WriteState);

                writer.WriteStartSelect();
                writer.WriteColumn("u", "Id", null);
                writer.WriteColumn("u", "Name", null);
                writer.WriteColumn("p", "Age", null);
                writer.WriteStartFrom();
                writer.WriteTable("Users", "u");
                writer.WriteStartJoin(SqlJoinType.Inner);
                writer.WriteTable("Profiles", "p");
                writer.WriteStartOn();
                writer.WriteColumn("u", "Id", null);
                writer.WriteOperator(SqlBinaryOperator.Equal);
                writer.WriteColumn("p", "UserId", null);
                writer.WriteStartWhere();
                writer.WriteColumn("p", "Age", null);
                writer.WriteOperator(SqlBinaryOperator.GreaterThanOrEqual);
                writer.WriteValue(30);
                writer.WriteEndSelect();
            }

            Assert.AreEqual("SELECT [u].[Id], [u].[Name], [p].[Age] FROM [Users] [u] INNER JOIN [Profiles] [p] ON ([u].[Id] = [p].[UserId]) UNION SELECT [u].[Id], [u].[Name], [p].[Age] FROM [Users] [u] INNER JOIN [Profiles] [p] ON ([u].[Id] = [p].[UserId]) WHERE ([p].[Age] >= 30)", builder.ToString());
        }
开发者ID:WouterDemuynck,项目名称:popsql,代码行数:48,代码来源:SqlWriterUnionTests.cs

示例2: WriteStartFrom_WhenSelectStatement_WritesWhere

        public void WriteStartFrom_WhenSelectStatement_WritesWhere()
        {
            StringBuilder builder = new StringBuilder();
            using (SqlWriter writer = new SqlWriter(builder))
            {
                writer.WriteStartSelect();
                writer.WriteColumn("Id");
                writer.WriteColumn("Name", "n");
                writer.WriteColumn("Users", "Email", "e");
                writer.WriteStartFrom();
                writer.WriteTable("Users");
                writer.WriteStartWhere();
                Assert.AreEqual(SqlWriterState.StartWhere, writer.WriteState);
                writer.WriteColumn("Id");
                writer.WriteOperator(SqlBinaryOperator.Equal);
                writer.WriteParameter("Id");
                writer.WriteOperator(SqlBinaryOperator.Or);
                writer.WriteColumn("Id");
                writer.WriteOperator(SqlBinaryOperator.LessThan);
                writer.WriteValue(100);
            }

            Assert.AreEqual("SELECT [Id], [Name] AS [n], [Users].[Email] AS [e] FROM [Users] WHERE ([Id] = @Id) OR ([Id] < 100)", builder.ToString());
        }
开发者ID:WouterDemuynck,项目名称:popsql,代码行数:24,代码来源:SqlWriterSelectTests.cs

示例3: WriteStartOn_WritesOnClause

        public void WriteStartOn_WritesOnClause()
        {
            StringBuilder builder = new StringBuilder();
            using (SqlWriter writer = new SqlWriter(builder))
            {
                writer.WriteStartSelect();
                writer.WriteColumn("Id");
                writer.WriteColumn("Name", "n");
                writer.WriteColumn("Users", "Email", "e");
                writer.WriteStartFrom();
                writer.WriteTable("Users");
                writer.WriteStartJoin();
                writer.WriteTable("Profiles");
                writer.WriteStartOn();
                writer.WriteColumn("Users", "Id", null);
                writer.WriteOperator(SqlBinaryOperator.Equal);
                writer.WriteColumn("Profiles", "UserId", null);
                writer.WriteOperator(SqlBinaryOperator.And);
                writer.WriteColumn("Users", "Name", null);
                writer.WriteOperator(SqlBinaryOperator.Equal);
                writer.WriteParameter("Name");
                writer.WriteStartWhere();
                Assert.AreEqual(SqlWriterState.StartWhere, writer.WriteState);
                writer.WriteColumn("Id");
                writer.WriteOperator(SqlBinaryOperator.Equal);
                writer.WriteParameter("Id");
                writer.WriteOperator(SqlBinaryOperator.Or);
                writer.WriteColumn("Id");
                writer.WriteOperator(SqlBinaryOperator.LessThan);
                writer.WriteValue(100);
                writer.WriteStartOrderBy();
                writer.WriteColumn("Id");
                writer.WriteSortOrder(SqlSortOrder.Ascending);
                writer.WriteColumn("Name");
                writer.WriteSortOrder(SqlSortOrder.Descending);
            }

            Assert.AreEqual("SELECT [Id], [Name] AS [n], [Users].[Email] AS [e] FROM [Users] JOIN [Profiles] ON ([Users].[Id] = [Profiles].[UserId]) AND ([Users].[Name] = @Name) WHERE ([Id] = @Id) OR ([Id] < 100) ORDER BY [Id] ASC, [Name] DESC", builder.ToString());
        }
开发者ID:WouterDemuynck,项目名称:popsql,代码行数:39,代码来源:SqlWriterSelectTests.cs


注:本文中的SqlWriter.WriteStartWhere方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。