Esempio n. 1
0
        public void CreateTrigger()
        {
            var body = new PlSqlBlockStatement();

            body.Statements.Add(new OpenStatement("c1"));
            body.Statements.Add(new CursorForLoopStatement("i", "c1"));
            body.Statements.Add(new ReturnStatement());

            var statement = new CreateTriggerStatement(ObjectName.Parse("APP.trig1"), new ObjectName("tab1"), body,
                                                       TriggerEventTime.Before, TriggerEventType.Insert | TriggerEventType.Update);

            SerializeAndAssert(statement, (serialized, deserialized) => {
                Assert.IsNotNull(deserialized);
                Assert.IsNotNull(deserialized.TriggerName);
                Assert.IsNotNull(deserialized.TableName);
                Assert.IsNotNull(deserialized.Body);
                Assert.AreEqual("APP.trig1", deserialized.TriggerName.FullName);
                Assert.AreEqual("tab1", deserialized.TableName.FullName);
                Assert.AreEqual(TriggerEventTime.Before, deserialized.EventTime);
            });
        }
Esempio n. 2
0
 public override void Visit(CreateTriggerStatement node) { this.action(node); }
 public override void ExplicitVisit(CreateTriggerStatement fragment)
 {
     _fragments.Add(fragment);
 }
Esempio n. 4
0
 public override void Visit(CreateTriggerStatement node)
 {
     base.Visit(node);
     _statements.Add(node);
 }