1. 程式人生 > >C#操作mysql的建表、基本儲存與讀取

C#操作mysql的建表、基本儲存與讀取

由於專案中要使用到資料庫來儲存一些基本資料,所以在此做了一些簡單的總結,也是最基本的mysql資料操作。

一、資料庫的儲存

專案中儲存資料時,需要根據操作者在介面上的操作來決定是否儲存(操作介面上有建立表格和儲存資料的按鈕),所以在儲存資料前,如果點選“建立表格”的話,會在mysql資料庫中建立一個新表,

 class MySQL
    {
        /// <summary>
        /// 建立mysql資料庫連結
        /// </summary>
        /// <returns></returns>
        private string mysqlStr = "Database=test;Data Source=127.0.0.1;User             Id=root;pooling=false;CharSet=utf8;port=3306";
        public  MySqlConnection getMySqlCon()
        {
            MySqlConnection mysql = new MySqlConnection(mysqlStr);
            return mysql;
        }
        /// <summary>
        /// 建立執行命令語句物件
        /// </summary>
        /// <param name="sql"></param>
        /// <param name="mysql"></param>
        /// <returns></returns>
        public  MySqlCommand getSqlCommand(String sql, MySqlConnection mysql)
        {
            MySqlCommand mySqlCommand = new MySqlCommand(sql, mysql)
            return mySqlCommand;
        }
        /// <summary>
        /// 建立資料庫中的表
        /// </summary>
        /// <param name="tableName">輸入表名</param>
        public  void AlterTableExample(string tableName)
        {
            string createStatement = "CREATE TABLE " + tableName+ "(time text,number int,wavelength double)";
//括號內為所建表中新增的欄位
            using (MySqlConnection conn = new MySqlConnection(mysqlStr))
            {
                conn.Open();
                    // 建表                      
                using (MySqlCommand cmd = new MySqlCommand(createStatement, conn))
                {
                    int tmp = cmd.ExecuteNonQuery();
                        
                }     
            }
        }
        /// <summary>
        /// 向資料庫中插入資料
        /// </summary>
        /// <param name="tableName">輸入表名</param>

        public  void getInsert(MySqlCommand mySqlCommand)
        {
            try
            {
                mySqlCommand.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                String message = ex.Message;
                Console.WriteLine("插入資料失敗了!" + message);
            }

        }

}  

以上為建立的資料庫操作類,在使用時只需要例項化類,然後將通過傳入特定的指令引數來進行操作。

以下為簡單的操作示範:

MySQl MS = new MySQL();
//建立表格
ms.AlterTableExample(tBTableName.Text);
MessageBox.Show("Table has created successfully");
//插入資料的指令
string sqlInsert = "insert into "+saveTable+" (time,number,wavelength) values('" + System.DateTime.Now.ToString("yyyyMMdd_HHmmss").ToString() + "','"+ FBGNums.ToString() + "','" + tmpData + "')";
//執行插入的指令
MySqlConnection mysql = ms.getMySqlCon();
mysql.Open();
MySqlCommand cmd = ms.getSqlCommand(sqlInsert, mysql);
cmd.ExecuteNonQuery();
mysql.Close();