string pConStr = "datasource=127.0.0.1;username=root;password=shi123;database=test;charset=utf8";
            try
            {
                MySqlConnection pMysqlConnection = new MySqlConnection(pConStr);
                pMysqlConnection.Open();
                string pCreateTable = "CREATE TABLE `总成绩表` (`学号`  int NOT NULL ,`姓名`  text NOT NULL ,`语文`  int NOT NULL ,`数学`  int NOT NULL ,`英语`  int NOT NULL ,`总分` int NOT NULL,`平均分`  double NOT NULL,PRIMARY KEY(`学号`)); ";
                MySqlCommand pMysqlcommnand = new MySqlCommand(pCreateTable, pMysqlConnection);
                pMysqlcommnand.ExecuteNonQuery();
                string pTS = "ALTER TABLE `总成绩表` ALTER `总分` SET DEFAULT 0,ALTER `平均分` SET DEFAULT 0";

                string pInsert = "INSERT INTO `总成绩表`(`学号`,`姓名`,`语文`,`数学`,`英语`)(SELECT * FROM (SELECT `成绩表`.`学号`,`花名册`.`姓名`,`成绩表`.`语文`,`成绩表`.`数学`,`成绩表`.`英语` FROM `花名册` JOIN `成绩表` ON `成绩表`.`学号`=`花名册`.`学号`) AS RNG)";
                string pUPDATE = "UPDATE `总成绩表` SET `总分` = `语文`+`数学`+`英语`";
                 //UPDATE 后面可以不用加where
                string pUPDATE2 = "UPDATE `总成绩表` SET `平均分`=(`语文`+`数学`+`英语`)/3";

                MySqlCommand pMysqlcommnandinsert1 = new MySqlCommand(pInsert, pMysqlConnection);
                MySqlCommand pMysqlcommnandinsert2 = new MySqlCommand(pTS, pMysqlConnection);
                MySqlCommand pMysqlcommnandinsert3 = new MySqlCommand(pUPDATE, pMysqlConnection);
                MySqlCommand pMysqlcommnandinsert4 = new MySqlCommand(pUPDATE2, pMysqlConnection);
                pMysqlcommnandinsert2.ExecuteNonQuery();
                pMysqlcommnandinsert1.ExecuteNonQuery();
                pMysqlcommnandinsert3.ExecuteNonQuery();
                pMysqlcommnandinsert4.ExecuteNonQuery();

//这段代码的作用是将两个已存在的表(两个表中的字段在新建表中都有,且新建的表的字段比两个已知表的字段还要多)复制到一个新建的表中,

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            finally
            {
                MySqlConnection pMysqlConnection = new MySqlConnection(pConStr);
                pMysqlConnection.Open();
                MySqlDataAdapter sda = new MySqlDataAdapter("SELECT * FROM `总成绩表`", pMysqlConnection);
                DataSet ds = new DataSet();
                sda.Fill(ds);
                dataGridView1.DataSource = ds.Tables[0];
            }

 

posted on 2018-07-31 22:18  xiaoshibushiyue  阅读(188)  评论(0)    收藏  举报