Example #1
0
        /// <summary>
        /// 测试连接
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button1_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(cbbServer.Text))
            {
                MessageBox.Show("服务器不能为空!");
                return;
            }

            if (string.IsNullOrEmpty(txtUserName.Text))
            {
                MessageBox.Show("登陆名不能为空!");
                return;
            }

            try
            {
                IDbObject dbObejct    = new Dos.DbObjects.MySQL.DbObject(false, cbbServer.Text, txtUserName.Text, txtPassword.Text, txtport.Text);
                DataTable DBNameTable = dbObejct.GetDBList();
                cbbDatabase.Items.Clear();
                cbbDatabase.Items.Add("全部");
                foreach (DataRow dr in DBNameTable.Rows)
                {
                    cbbDatabase.Items.Add(dr[0].ToString());
                }

                cbbDatabase.Enabled       = true;
                cbbDatabase.SelectedIndex = 0;
                MessageBox.Show("连接成功!");
            }
            catch (Exception ex)
            {
                MessageBox.Show("连接失败!\n\r" + ex.Message);
                cbbDatabase.Enabled = false;
            }
        }
Example #2
0
        /// <summary>
        ///
        /// </summary>
        private void getDatabaseinfo()
        {
            TreeNode node = tview.SelectedNode;

            Model.Connection conModel = list.Find(delegate(Model.Connection con) { return(con.ID.ToString().Equals(node.Tag.ToString())); });

            IDbObject dbObject;

            if (conModel.DbType.Equals(Dos.ORM.DatabaseType.MsAccess.ToString()))
            {
                dbObject = new Dos.DbObjects.OleDb.DbObject(conModel.ConnectionString);

                TreeNode tnode = new TreeNode(conModel.Database, 1, 1);
                tnode.Tag = conModel.ConnectionString;
                tnode.ContextMenuStrip = contextMenuStripOneDataBase;
                node.Nodes.Add(tnode);



                gettables(tnode, dbObject.GetTables(""), dbObject.GetVIEWs(""));
            }
            else if (conModel.DbType.Equals(Dos.ORM.DatabaseType.Sqlite3.ToString()))
            {
                dbObject = new Dos.DbObjects.SQLite.DbObject(conModel.ConnectionString);

                TreeNode tnode = new TreeNode(conModel.Database, 1, 1);
                tnode.Tag = conModel.ConnectionString;
                tnode.ContextMenuStrip = contextMenuStripOneDataBase;
                node.Nodes.Add(tnode);

                gettables(tnode, dbObject.GetTables(""), dbObject.GetVIEWs(""));
            }
            else if (conModel.DbType.Equals(Dos.ORM.DatabaseType.SqlServer.ToString()) || conModel.DbType.Equals(Dos.ORM.DatabaseType.SqlServer9.ToString()))
            {
                if (conModel.DbType.Equals(Dos.ORM.DatabaseType.SqlServer.ToString()))
                {
                    dbObject = new Dos.DbObjects.SQL2000.DbObject(conModel.ConnectionString);
                }
                else
                {
                    dbObject = new Dos.DbObjects.SQL2005.DbObject(conModel.ConnectionString);
                }

                if (conModel.Database.Equals("all"))
                {
                    DataTable dt = dbObject.GetDBList();

                    foreach (DataRow dr in dt.Rows)
                    {
                        TreeNode tnode = new TreeNode(dr[0].ToString(), 1, 1);
                        tnode.Tag = conModel.ConnectionString.Replace("master", dr[0].ToString());
                        tnode.ContextMenuStrip = contextMenuStripOneDataBase;
                        node.Nodes.Add(tnode);

                        gettables(tnode, dbObject.GetTables(tnode.Text), dbObject.GetVIEWs(tnode.Text));
                    }
                }
                else
                {
                    TreeNode tnode = new TreeNode(conModel.Database, 1, 1);
                    tnode.Tag = conModel.ConnectionString;
                    tnode.ContextMenuStrip = contextMenuStripOneDataBase;
                    node.Nodes.Add(tnode);

                    gettables(tnode, dbObject.GetTables(tnode.Text), dbObject.GetVIEWs(tnode.Text));
                }
            }
            else if (conModel.DbType.Equals(Dos.ORM.DatabaseType.Oracle.ToString()))
            {
                dbObject = new Dos.DbObjects.Oracle.DbObject(conModel.ConnectionString);

                TreeNode tnode = new TreeNode(conModel.Database, 1, 1);
                tnode.Tag = conModel.ConnectionString;
                tnode.ContextMenuStrip = contextMenuStripOneDataBase;
                node.Nodes.Add(tnode);

                gettables(tnode, dbObject.GetTables(tnode.Text), dbObject.GetVIEWs(tnode.Text));
            }
            else if (conModel.DbType.Equals(Dos.ORM.DatabaseType.MySql.ToString()))
            {
                dbObject = new Dos.DbObjects.MySQL.DbObject(conModel.ConnectionString);

                if (conModel.Database.Equals("all"))
                {
                    DataTable dt = dbObject.GetDBList();

                    foreach (DataRow dr in dt.Rows)
                    {
                        TreeNode tnode = new TreeNode(dr[0].ToString(), 1, 1);
                        tnode.Tag = conModel.ConnectionString.Replace("master", dr[0].ToString());
                        tnode.ContextMenuStrip = contextMenuStripOneDataBase;
                        node.Nodes.Add(tnode);

                        gettables(tnode, dbObject.GetTables(tnode.Text), dbObject.GetVIEWs(tnode.Text));
                    }
                }
                else
                {
                    TreeNode tnode = new TreeNode(conModel.Database, 1, 1);
                    tnode.Tag = conModel.ConnectionString;
                    tnode.ContextMenuStrip = contextMenuStripOneDataBase;
                    node.Nodes.Add(tnode);

                    gettables(tnode, dbObject.GetTables(tnode.Text), dbObject.GetVIEWs(tnode.Text));
                }
            }
        }