示例#1
0
 private void buildConstraintColumnsNode(TableConstraint constraint, TreeNode parentNode)
 {
     foreach (string s in constraint.Columns) {
         TreeNode node = new TreeNode(s, 3, 3);
         parentNode.Nodes.Add(node);
     }
 }
示例#2
0
        private void buildConstraintDetailsNode(TableConstraint constraint, TreeNode parentNode)
        {
            if (constraint is CheckConstraint)
            {
                string clause = ((CheckConstraint)constraint).Clause;
                TreeNode n = new TreeNode("Clause: " + clause, 3, 3);
                parentNode.Nodes.Add(n);
            }

            if (constraint is HXF.Persistence.Descriptors.ForeignKeyConstraint)
            {
                HXF.Persistence.Descriptors.ForeignKeyConstraint fk = (HXF.Persistence.Descriptors.ForeignKeyConstraint)constraint;
               
                parentNode.Nodes.Add(new TreeNode("Referenced Table: " + fk.ReferencedTable, 3, 3));
                parentNode.Nodes.Add(new TreeNode("Unique Constraint: " + fk.UniqueConstraint, 3, 3));


                StringBuilder sb = new StringBuilder();
                for (int i = 0; i < fk.ReferencedColumns.Count; i++)
                {
                    string cc = fk.ReferencedColumns[i];
                    sb.Append(cc);
                    if (i < constraint.Columns.Count - 1)
                    {
                        sb.Append(", ");
                    }
                }

                TreeNode conRefColumns = new TreeNode("Refrenced Columns: " + "(" + sb.ToString() + ")", 3, 3);
                parentNode.Nodes.Add(conRefColumns);

                string updateRule = fk.UpdateRule;
                parentNode.Nodes.Add(new TreeNode("Update Rule: " + updateRule, 3, 3));

                string deleteRule = fk.DeleteRule;
                parentNode.Nodes.Add(new TreeNode("Delete Rule: " + deleteRule, 3, 3));

            }
        }