Пример #1
0
        /// <summary>
        /// 添加一个数据库
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void skinButton_add_Click(object sender, EventArgs e)
        {
            string databaseName = textBox_name.Text;
            string ip           = textBox_ip.Text;
            string port         = textBox_port.Text;
            string username     = textBox_username.Text;
            string password     = textBox_password.Text;
            string encoding     = textBox_encoding.Text;

            if (databaseName.Trim() == "")
            {
                MessageBox.Show("数据库名称不能为空", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            lib.pMysql mysql = new lib.pMysql(ip, port, username, password, "");
            if (!mysql.isConnOpen())
            {
                MessageBox.Show("MySQL无法打开!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            pDataManageClass p = new pDataManageClass();

            if (!p.addMysqlDataBase(databaseName, ip, port, username, password, encoding))
            {
                MessageBox.Show("添加出错!" + p.error, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            this.Close();
        }
Пример #2
0
 public void treeView_database_DoubleClickFun()
 {
     this.Cursor = Cursors.WaitCursor;
     try
     {
         Data.pDataManageClass p = new Data.pDataManageClass();
         TreeView tv             = treeView_database;
         this.treeviewSelectHash = "";
         if (tv.SelectedNode == null)
         {
             this.Cursor = Cursors.Default; return;
         }
         string hash = tv.SelectedNode.Name;
         this.treeviewSelectHash = hash;
         Dictionary <string, string> database = p.getDataBaseHash(hash);
         if (database.Count > 0)                                          //是数据库
         {
             if (database["type"] == Data.DataBaseType.Sqlite.ToString()) //sqlite
             {
                 if (!File.Exists(database["path"]))
                 {
                     MessageBox.Show("数据库不存在!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     this.Cursor = Cursors.Default;
                     return;
                 }
                 showSqliteTreeViewTableList(tv, hash, database);
                 return;
             }
             if (database["type"] == Data.DataBaseType.Mysql.ToString())//mysql
             {
                 lib.pMysql mysql = new lib.pMysql(database["ip"], database["port"], database["username"], database["password"], "");
                 if (!mysql.isConnOpen())
                 {
                     MessageBox.Show("无法打开数据库!" + mysql.error, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     this.Cursor = Cursors.Default; return;
                 }
                 showMysqlTreeViewTableList(tv, hash, database, mysql);
                 this.Cursor = Cursors.Default;
                 return;
             }
         }
         string[] array = hash.Split('|');
         if (array.Length < 2)
         {
             this.Cursor = Cursors.Default; return;
         }
         if (array[1] == "table")//打开表
         {
             Dictionary <string, string> list = p.getDataBaseHash(array[0]);
             if (list.Count <= 0)
             {
                 this.Cursor = Cursors.Default; return;
             }
             if (list["type"] == Data.DataBaseType.Sqlite.ToString())//sqlite
             {
                 lib.pSqlite sqlite = new lib.pSqlite(list["path"]);
                 Dictionary <int, object> tableList = sqlite.getTableListData(array[3]);
                 showDataViewTableListData(tableList);
             }
         }
         if (array[1] == "mysql_database")//打开mysql数据库显示表
         {
             database = p.getDataBaseHash(array[0]);
             string     databaseName = array[3];//数据库
             lib.pMysql mysql        = new lib.pMysql(database["ip"], database["port"], database["username"], database["password"], databaseName);
             showMysqlTableTreeViewTableList(treeView_database, array[0], database, mysql, databaseName);
             mysql.close();
         }
         if (array[1] == "mysql_table")//打开mysql表
         {
             database = p.getDataBaseHash(array[0]);
             string     databaseName = array[3]; //数据库
             string     table        = array[4]; //数据库
             lib.pMysql mysql        = new lib.pMysql(database["ip"], database["port"], database["username"], database["password"], databaseName);
             if (!mysql.isConnOpen())
             {
                 MessageBox.Show("操作不正常");
                 this.Cursor = Cursors.Default; return;
             }
             Dictionary <int, object> tableList = mysql.getTableListData(table);
             if (tableList.Count <= 0)//为空情况下默认输出一行
             {
                 lib.pMysql mysqlInfo = new lib.pMysql(database["ip"], database["port"], database["username"], database["password"], databaseName);
                 Dictionary <int, object>    tableListInfo = mysqlInfo.getTableInfo(table);
                 Dictionary <string, string> add           = new Dictionary <string, string> {
                 };
                 for (int i = 0; i < tableListInfo.Count; i++)
                 {
                     Dictionary <string, string> temp = (Dictionary <string, string>)tableListInfo[i];
                     add.Add(temp["Field"], "");
                 }
                 tableList.Add(0, add);
             }
             showDataViewTableListData(tableList);
             skinTabControl1.SelectedTab = skinTabPage1;
         }
     }
     catch (Exception ex)
     {
         pLogs.logs(ex.ToString());
         this.Cursor = Cursors.Default;
     }
     this.Cursor = Cursors.Default;
 }