C# 操作mysql数据库

  该文讲解 C# 对 mysql 数据库进行增删改查操作。

  1.  安装数据库,注意要安装 Connector NET。

  2.  引入 MySql.Data.dll,添加项目引用,该文件一般位置为:C:\Program Files (x86)\MySQL\Connector NET xx\Assemblies\v xx(由 mysql 安装位置决定)。

  3.  在 MySQL Workbench 中添加测试表,本例创建了一个数据库 test,并在该数据库中创建了一个 user 表,表中有 username 和 password 两个表项,如下:

  

  4. 对数据库进行增删改查,C# 代码如下:

 1 using System;
 2 using MySql.Data.MySqlClient;
 3 
 4 namespace MySQL数据库操作
 5 {
 6     class Program
 7     {
 8         static void Main(string[] args)
 9         {
10             // 数据库配置
11             string connStr = "Database=test;datasource=127.0.0.1;port=3306;user=root;pwd=root;";
12             MySqlConnection conn = new MySqlConnection(connStr);
13 
14             conn.Open();
15 
16             #region 查询
17 //            // 查询user表中所有条目
18 //            MySqlCommand cmd = new MySqlCommand("select * from user", conn);
19 //
20 //            MySqlDataReader reader = cmd.ExecuteReader();
21 //
22 //            // 逐行读取数据
23 //            while (reader.Read())
24 //            {
25 //                string username = reader.GetString("username");
26 //                string password = reader.GetString("password");
27 //                Console.WriteLine(username + ":" + password);
28 //            }
29 //
30 //            reader.Close();
31             #endregion
32 
33             #region 插入
34 //            // 正常插入一条数据
35 //            string username = "lj";string password = "6666";
36 //            MySqlCommand cmd = new MySqlCommand("insert into user set username ='" + username + "'" + ",password='" + password + "'", conn);
37 //            cmd.ExecuteNonQuery();
38             
39 //            // sql 注入,会删除数据库
40 //            string username = "lj"; string password = "6666'; delete from user;";
41 //            MySqlCommand cmd = new MySqlCommand("insert into user set username ='" + username + "'" + ",password='" + password + "'", conn);
42 //            cmd.ExecuteNonQuery();
43 
44 //            // 防止注入,不会执行删除数据库语句
45 //            string username = "lj"; string password = "6666'; delete from user;";
46 //            MySqlCommand cmd = new MySqlCommand("insert into user set username=@uid , password = @pwd", conn);
47 //            cmd.Parameters.AddWithValue("uid", username);
48 //            cmd.Parameters.AddWithValue("pwd", password);
49 //            cmd.ExecuteNonQuery();
50             #endregion
51 
52             #region 删除
53 //            // 删除 id 为 6 的条目
54 //            MySqlCommand cmd = new MySqlCommand("delete from user where id = @id", conn);
55 //            cmd.Parameters.AddWithValue("id", 6);
56 //
57 //            cmd.ExecuteNonQuery();
58             #endregion
59 
60             #region 更新
61             // 将 id 为 7 的条目 pwd 修改为 lll
62             MySqlCommand cmd = new MySqlCommand("update user set password = @pwd where id = 7", conn);
63             cmd.Parameters.AddWithValue("pwd", "lll");
64 
65             cmd.ExecuteNonQuery();
66             #endregion
67 
68             conn.Close();
69 
70             Console.ReadKey();
71         }
72     }
73 }

 

posted @ 2018-05-05 17:23  Just_for_Myself  阅读(12044)  评论(0编辑  收藏  举报