Inheritance: SqlStatement, IPlSqlStatement
Exemplo n.º 1
0
        public static void NoArgs()
        {
            var statement = new CallStatement(ObjectName.Parse("proc1"));

            var sql = statement.ToString();

            Assert.AreEqual("CALL proc1()", sql);
        }
Exemplo n.º 2
0
        public static void NamedArgs()
        {
            var statement = new CallStatement(ObjectName.Parse("APP.proc1"), new InvokeArgument[] {
                new InvokeArgument("a", SqlExpression.Constant(Field.Number(new SqlNumber(8399.22, 6))))
            });

            var sql = statement.ToString();

            Assert.AreEqual("CALL APP.proc1(a => 8399.22)", sql);
        }
Exemplo n.º 3
0
        public static void AnonArgs()
        {
            var statement = new CallStatement(ObjectName.Parse("proc1"), new SqlExpression[] {
                SqlExpression.Constant("one")
            });

            var sql = statement.ToString();

            Assert.AreEqual("CALL proc1('one')", sql);
        }
        public void CallNoArgs()
        {
            var name = ObjectName.Parse("APP.proc1");
            var statement = new CallStatement(name);

            SerializeAndAssert(statement, (serialized, deserialized) => {
                Assert.IsNotNull(deserialized);
                Assert.IsNotNull(deserialized.ProcedureName);
                Assert.IsEmpty(deserialized.Arguments);

                Assert.AreEqual("APP", deserialized.ProcedureName.ParentName);
                Assert.AreEqual("proc1", deserialized.ProcedureName.Name);
            });
        }
Exemplo n.º 5
0
 protected virtual SqlStatement VisitCall(CallStatement statement)
 {
     return new CallStatement(statement.ProcedureName, statement.Arguments);
 }
        public void CallWithArgs()
        {
            var name = ObjectName.Parse("APP.proc1");
            var args = new InvokeArgument[] {
                new InvokeArgument(SqlExpression.Constant(32)),
                new InvokeArgument(SqlExpression.Reference(new ObjectName("a")))
            };

            var statement = new CallStatement(name, args);

            SerializeAndAssert(statement, (serialized, deserialized) => {
                Assert.IsNotNull(deserialized);
                Assert.IsNotNull(deserialized.ProcedureName);
                Assert.IsNotNull(deserialized.Arguments);
                Assert.IsNotEmpty(deserialized.Arguments);

                Assert.AreEqual("APP", deserialized.ProcedureName.ParentName);
                Assert.AreEqual("proc1", deserialized.ProcedureName.Name);
            });
        }
Exemplo n.º 7
0
 protected virtual SqlStatement VisitCall(CallStatement statement)
 {
     return(new CallStatement(statement.ProcedureName, statement.Arguments));
 }