public static void NoArgs() { var statement = new CallStatement(ObjectName.Parse("proc1")); var sql = statement.ToString(); Assert.AreEqual("CALL proc1()", sql); }
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); }
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); }); }
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); }); }
protected virtual SqlStatement VisitCall(CallStatement statement) { return(new CallStatement(statement.ProcedureName, statement.Arguments)); }