Example #1
0
        private void AddFKBtn_MouseClick(object sender, MouseEventArgs e)
        {
            Table       table = new Table();
            XmlDocument doc   = new XmlDocument();

            doc.Load("Tables.xml");

            string col_name = CurrCol.SelectedItem.ToString();

            XmlNodeList list_tables = doc.SelectNodes("//Table[@name='" + Home.tableName + "']");
            XmlNodeList list_cols   = list_tables[0].SelectSingleNode("Columns").SelectNodes("column");

            for (int i = 0; i < list_cols.Count; i++)
            {
                if (list_cols[i].SelectSingleNode("Name").InnerText == col_name)
                {
                    XmlElement F_K       = doc.CreateElement("F_K");
                    XmlElement tablename = doc.CreateElement("Tablem_name");
                    tablename.InnerText = RTableCBox.SelectedItem.ToString();
                    F_K.AppendChild(tablename);

                    XmlElement colname = doc.CreateElement("Column_name");
                    colname.InnerText = RColCBox.SelectedItem.ToString();
                    F_K.AppendChild(colname);

                    list_cols[i].SelectSingleNode("Foreign_keys").AppendChild(F_K);
                }
            }
            doc.Save("Tables.xml");

            string tname = Home.tableName;
            Home   h     = new Home();

            this.ParentForm.Controls.Add(h);
            h.Show();
            h.BringToFront();
            h.Dock = DockStyle.Fill;
            h.TblCBox.SelectedItem = tname;
            h.Display_data();
        }
Example #2
0
        private void AddColBtn_Click(object sender, EventArgs e)
        {
            string table_name      = TblNameTxt.Text;
            string colomun_name    = CNameTxt.Text;
            string data_type       = DTypeCBox.SelectedItem.ToString();
            string type_constraint = ConsCBox.SelectedItem.ToString();
            string constraint      = ConsTxt.Text;
            bool   p_key           = PKCheckBox.Checked;

            Table table_gui = new Table(table_name);

            DataTable table = new DataTable();

            DataColumn[] key = new DataColumn[1];

            DataColumn column = new DataColumn();

            column.DataType   = System.Type.GetType("System." + data_type);
            column.ColumnName = colomun_name;

            table.Columns.Add(column);
            key[0] = column;

            if (p_key == true)
            {
                table.PrimaryKey = key;
            }

            if (!File.Exists("Tables.xml"))
            {
                XmlWriter writer = XmlWriter.Create("Tables.xml");

                //start
                writer.WriteStartDocument();
                writer.WriteStartElement("Tables");

                writer.WriteStartElement("Table");
                writer.WriteAttributeString("name", table_name);

                writer.WriteStartElement("Columns");


                writer.WriteStartElement("column");

                writer.WriteStartElement("Name");
                writer.WriteString(colomun_name);
                writer.WriteEndElement();

                writer.WriteStartElement("data_type");
                writer.WriteString(data_type);
                writer.WriteEndElement();

                writer.WriteStartElement("Primary_key");
                if (p_key)
                {
                    writer.WriteString("true");
                }
                else
                {
                    writer.WriteString("false");
                }
                writer.WriteEndElement();

                writer.WriteStartElement("Constarints");
                writer.WriteString(type_constraint + " " + constraint);
                writer.WriteEndElement();

                writer.WriteStartElement("Foreign_keys");
                writer.WriteEndElement();

                writer.WriteStartElement("rows");

                writer.WriteEndElement();

                //<column>
                writer.WriteEndElement();
                //<columns>
                writer.WriteEndElement();
                //<table>
                writer.WriteEndElement();
                //<tables>
                writer.WriteEndElement();
                //end
                writer.WriteEndDocument();
                writer.Close();

                MessageBox.Show("Table is Added!");
                Home h = new Home();
                this.ParentForm.Controls.Add(h);
                h.Show();
                h.BringToFront();
                h.Dock = DockStyle.Fill;
            }
            else
            {
                XmlDocument doc = new XmlDocument();
                doc.Load("Tables.xml");

                XmlNodeList list_tables = doc.SelectNodes("//Table[@name='" + table_name + "']");

                if (list_tables.Count > 0)
                {
                    try
                    {
                        XmlNode col = list_tables[0].SelectSingleNode("Columns").AppendChild(doc.CreateElement("column"));

                        XmlElement dt = doc.CreateElement("Name");
                        dt.InnerText = colomun_name;
                        col.AppendChild(dt);

                        dt           = doc.CreateElement("data_type");
                        dt.InnerText = data_type;
                        col.AppendChild(dt);

                        dt = doc.CreateElement("Primary_key");
                        if (p_key)
                        {
                            dt.InnerText = "true";
                        }
                        else
                        {
                            dt.InnerText = "false";
                        }

                        col.AppendChild(dt);


                        dt           = doc.CreateElement("Constraints");
                        dt.InnerText = type_constraint + " " + constraint;

                        col.AppendChild(dt);

                        dt = doc.CreateElement("Foreign_keys");
                        col.AppendChild(dt);

                        dt = doc.CreateElement("rows");
                        col.AppendChild(dt);
                        doc.Save("Tables.xml");
                        MessageBox.Show("Column is Added!");
                        string tname = Home.tableName;
                        Home   h     = new Home();
                        this.ParentForm.Controls.Add(h);
                        h.Show();
                        h.BringToFront();
                        h.Dock = DockStyle.Fill;
                        h.TblCBox.SelectedItem = tname;
                        h.Display_data();
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("Table already exist !");
                    }
                }
                else
                {
                    XmlNode    node   = doc.DocumentElement;
                    XmlElement tablee = doc.CreateElement("Table");

                    tablee.SetAttribute("name", table_name);

                    XmlElement cols = doc.CreateElement("Columns");

                    XmlElement col = doc.CreateElement("column");
                    XmlElement dt  = doc.CreateElement("Name");
                    dt.InnerText = colomun_name;
                    col.AppendChild(dt);

                    dt           = doc.CreateElement("data_type");
                    dt.InnerText = data_type;
                    col.AppendChild(dt);

                    dt = doc.CreateElement("Primary_key");
                    if (p_key)
                    {
                        dt.InnerText = "true";
                    }
                    else
                    {
                        dt.InnerText = "false";
                    }

                    col.AppendChild(dt);

                    dt           = doc.CreateElement("Constraints");
                    dt.InnerText = type_constraint + " " + constraint;

                    col.AppendChild(dt);

                    dt = doc.CreateElement("Foreign_keys");
                    col.AppendChild(dt);

                    dt = doc.CreateElement("rows");
                    col.AppendChild(dt);

                    cols.AppendChild(col);
                    tablee.AppendChild(cols);
                    node.AppendChild(tablee);

                    MessageBox.Show("Table is Added!");
                    doc.Save("Tables.xml");
                    Home h = new Home();
                    this.ParentForm.Controls.Add(h);
                    h.Show();
                    h.BringToFront();
                    h.Dock = DockStyle.Fill;
                }
            }
        }