Represents a table used in a query.
Наследование: TableBase
        public void Create_Query_With_One_Table()
        {
            // Setup
            var dataQuery = CreateSelectQuery();
            var table = new QueryTable("table");
            dataQuery.AddTable(table);

            // Execute
            Execute(dataQuery);

            // Validate
            Assert.AreEqual("select * from [table] t1", ExecutedSql);
        }
        public void Create_Query_With_One_Table_And_Int_Parameter()
        {
            // Setup
            var dataQuery = CreateSelectQuery();
            var table = new QueryTable("table");
            var clause = new EqualsClause(new FieldReference(table, "field"), new IntConstant(5));
            dataQuery.AddWhere(clause);
            dataQuery.AddTable(table);

            // Execute
            Execute(dataQuery);

            // Validate
            Assert.AreEqual("select * from [table] t1 where t1.[field]=@p1", ExecutedSql);
            Assert.AreEqual(1, ExecutedParameters.Length);
            Assert.AreEqual("p1", ExecutedParameters[0].ParameterName);
        }
        public void Create_FullText_Query()
        {
            // Setup
            var dataQuery = CreateSelectQuery();
            var t1 = new QueryTable("table1");
            var clause = new FullTextClause("Peter", new FieldReference(t1, "field"));
            dataQuery.AddTable(t1);
            dataQuery.AddWhere(clause);

            // Execute
            Execute(dataQuery);

            // Validate
            Assert.AreEqual(
                "select * from [table1] t1 where contains(t1.[field],@p1)",
                ExecutedSql);
        }
 private string GetAlias(QueryTable table)
 {
     return _aliasMap[table];
 }
 /// <summary>
 /// Creates a new <c>FieldReference</c> instance.
 /// </summary>
 /// <param name="table">The table that we are referencing</param>
 /// <param name="fieldName">The name of the field</param>
 public FieldReference(QueryTable table, string fieldName)
 {
     _table = table;
     _fieldName = fieldName;
 }
        public void Create_Query_With_Two_Tables()
        {
            // Setup
            var dataQuery = CreateSelectQuery();
            var t1 = new QueryTable("table1");
            var t2 = new QueryTable("table2");
            dataQuery.AddTable(t1);
            dataQuery.AddTable(t2);

            // Execute
            Execute(dataQuery);

            // Validate
            Assert.AreEqual("select * from [table1] t1, [table2] t2", ExecutedSql);
        }
        public void Fulltext_Clause_With_Only_Wildcard_Character_Is_Ignored()
        {
            // Setup
            var dataQuery = CreateSelectQuery();
            var t1 = new QueryTable("table1");
            var clause = new FullTextClause("*", new FieldReference(t1, "field"));
            dataQuery.AddTable(t1);
            dataQuery.AddWhere(clause);

            // Execute
            Execute(dataQuery);

            // Validate
            Assert.AreEqual(
                "select * from [table1] t1",
                ExecutedSql);
        }
 public Join LeftJoin(QueryTable table)
 {
     return new Join(this, table, JoinType.Left);
 }
 public Join InnerJoin(QueryTable table)
 {
     return new Join(this, table, JoinType.Inner);
 }
Пример #10
0
 public Join(TableBase left, QueryTable right, JoinType joinType)
 {
     _left = left;
     _right = right;
     _joinType = joinType;
 }