最近做一个项目,为了方便用户使用,希望可以在系统初始化的时候,自动实现MySQL数据库的建库和建表操作。在网上查了很多资料都没有找到合适的,偶尔在一个国外网站上看到了相关的内容,特把实现方法整理如下:

1、用C#实现MySQL建库

using System.Drawing;
using System.Windows.Forms;
using MySql.Data.MySqlClient;

namespace MySqlDemo
{
	   /// <summary>
	   /// 实现MySQL建库
	   /// </summary>
           public class Form1 : System.Windows.Forms.Form
            {
		
                void btnCreateDB(object sender, System.EventArgs e)
                {
                  MySqlConnection conn = new MySqlConnection("Data Source=localhost;Persist Security Info=yes;UserId=root; PWD=你的密码;");
                  MySqlCommand cmd = new MySqlCommand("CREATE DATABASE 你的数据库名;", conn );
		
                  conn.Open();			
                  cmd.ExecuteNonQuery();
                  conn.Close();
               }		
         }
}


2、用C#实现MySQL建表

        public static void AlterTableExample()
        {
            string connStr = DbWrapper.TestDbWrapper.BuildConnectionString(DbWrapperType.MySql);
            string createStatement = "CREATE TABLE Test (Field1 VarChar(50), Field2 Integer)";
            string alterStatement = "ALTER TABLE Test ADD Field3 Boolean";

            using (MySqlConnection conn = new MySqlConnection(connStr))
            {
                conn.Open();

                // 建表
                using (MySqlCommand cmd = new MySqlCommand(createStatement, conn))
                {
                    cmd.ExecuteNonQuery();
                }

                // 改表或者增加行
                using (MySqlCommand cmd = new MySqlCommand(alterStatement, conn))
                {
                    cmd.ExecuteNonQuery();
                }
            }
        }


参考资料:

http://www.daniweb.com/software-development/csharp/threads/237447

http://www.daniweb.com/software-development/csharp/threads/235791

http://forums.mysql.com/read.php?47,214878,214887#msg-214887

Logo

更多推荐