/// <summary> /// Visits the given <paramref name="removeReferenceNode"/>. /// </summary> /// <param name="removeReferenceNode"></param> public override void Visit(IRemoveReferenceNode removeReferenceNode) { if(IsImmediateChildOf<IColumnNode>(removeReferenceNode)) MoveNodeTo(removeReferenceNode, removeReferenceNode.Parent.Parent.Parent); else if(IsImmediateChildOf<ITableNode>(removeReferenceNode)) MoveNodeTo(removeReferenceNode, removeReferenceNode.Parent.Parent); }
/// <summary> /// Visits the given <paramref name="removeReferenceNode"/>. /// </summary> /// <param name="removeReferenceNode"></param> public override void Visit(IRemoveReferenceNode removeReferenceNode) { Visit(removeReferenceNode.ChildNodes); }
/// <summary> /// Visits the given <paramref name="removeReferenceNode"/>. /// </summary> /// <param name="removeReferenceNode"></param> public override void Visit(IRemoveReferenceNode removeReferenceNode) { TextWriter.WriteLine("alter table {0} drop constraint {1};", Platform.Dialect.EscapeIdentifier(removeReferenceNode.Table), Platform.Dialect.EscapeIdentifier(removeReferenceNode.Name)); }
/// <summary> /// Visits the given <paramref name="removeReferenceNode" />. /// </summary> /// <param name="removeReferenceNode"></param> public override void Visit(IRemoveReferenceNode removeReferenceNode) { textWriter.Write("remove reference {0}", GetIdentifier(removeReferenceNode.Name)); WriteProperties(removeReferenceNode); VisitBlock(removeReferenceNode); }
/// <summary> /// Visits the given <paramref name="removeReferenceNode"/>. /// </summary> /// <param name="removeReferenceNode"></param> public override void Visit(IRemoveReferenceNode removeReferenceNode) { if(removeReferenceNode.Properties[MdlSyntax.FkTable] != null) { ITableDefinition table = Environment.Schema.GetTable(AstNodePropertyUtil.AsString(removeReferenceNode.Properties[MdlSyntax.FkTable].Value)); table.RemoveReference(removeReferenceNode.Name); removeReferenceNode.Table = table.Name; return; } // if // // If this node is a child node of IAlterTableNode, use that tables' name // as the FkTable if(IsImmediateChildOf<IAlterTableNode>(removeReferenceNode)) { IAlterTableNode alterTableNode = (IAlterTableNode)removeReferenceNode.Parent; ITableDefinition table = Environment.Schema.GetTable(alterTableNode.Name); table.RemoveReference(removeReferenceNode.Name); removeReferenceNode.Table = table.Name; } // if }
public override void Visit(IRemoveReferenceNode removeReferenceNode) { }