C#链接MySql数据库实现增删改查

hl.wang

发布于 2018.11.09 15:45 阅读 2371 评论 0

问题:

C#与JAVA都是面向对象的编程语言,用java连接mysql数据库相信大家可能都会,那么用C#如何连接呢?如何实现增删改查呢,与java是不是大同小异呢?

分析:

既然都是面向对象的语言,语法也没有很大的差别,相信连接数据库也不会有很大的差别,下面让我们来看看如何连接吧。

案例演示:

首先去下载Mysql.Data.dll然后引入到项目中,接下来我们就可以来连接数据库了

 namespace MYSQLDemo
{
    class MySqlHelper
    {
       public  MySqlConnection getMysqlConnection()
        {
            //User Id 对应的mysql用户名,password对应密码,server对应的IP地址,Database对应要操作的库名
            String contest = "server=localhost;User Id=root;password=123;Database=mybase";
            //建立连接,相当于java中的得到Connection
            MySqlConnection mySqlConnection = new MySqlConnection(contest);
            return mySqlConnection;
        }
    }
}

 好了这样我们已经连接上我们的mysql数据库了,当然只是连接上还不行,C#里我们还需要“打开数据库”:


          MySqlConnection  mycon = new MySqlHelper().getMysqlConnection();
           mycon.Open();
        

现在数据库打开了我们可以操作数据库进行增删改查了:

 //添加
        public int insert(Member member) {
            String sql = "insert into member values(" + member.number +","
               +"'" + member.rank + "'" + ","
               + "'" + member.mname+"'" +","
               + "'" + member.phnumber + "'" + ","
               + "'" + member.address + "'" + ","
              + "'" + member.mdate + "'" + ")";
            MySqlCommand cmd = new MySqlCommand(sql, mycon);
            return cmd.ExecuteNonQuery();  
        }

然后在主函数里调用

  class Program
    {
        static void Main(string[] args)
        {
            Member member = new Member("100","高级","王厚林","15764239245","青岛","0830");
            int n = new Service().insert(member);
            if (n > 0) {
                Console.WriteLine("添加成功");
            }
            Console.ReadLine();
           
        }
    }
}
 

 运行之后我们发现数据库里添加成功了:

删除和更新只是改一下sql语句就可以,下面我们来看一下查找:

 //查找
        public List<Member> select() {
            List<Member> list = new List<Member>();
            String sql = "select * from member";
            MySqlCommand cmd = new MySqlCommand(sql, mycon);
            MySqlDataReader reader = cmd.ExecuteReader();
            while (reader.Read()) {
                if (reader.HasRows)
                {
                    Member member = new Member(reader.GetString(0), reader.GetString(1), reader.GetString(2), reader.GetString(3), reader.GetString(4), reader.GetString(5));
                    list.Add(member);
                }
            }
            return list;
         }

然后在主函数里调用运行:

namespace MYSQLDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            List<Member> list = new Service().select();
            foreach (Member m in list) {
                Console.WriteLine(m.number);
            }
            Console.ReadLine();
           
        }
    }
}

 只选择打印了number数据:

我们发现查询成功。

总结:

最后发现用C#连接数据库并执行增删改查是不是也不难,与java大同小异,只不过每个语言的类名不一样而已,本质上还是一样的。好了至于多表的查询还有待研究。