MySql的使用---查

下面在VS里面对数据库进行增删改查的操作:

首先是查询数据:

  public static void ReadDataBase()
        {
            string str = "select* from mytest.user";
            MySqlCommand cmd = new MySqlCommand(str, connection);
            MySqlDataReader reader = cmd.ExecuteReader();
            while (reader.Read())
            {
                 Console.WriteLine(reader[0].ToString()+"\t"+reader[1].ToString()+"\t"+reader[2].ToString());

            }
            
        }

首先编写Sql语句的查询语句,我这里是查询所有的User内容。然后获取MySql的执行命令,最后执行使用命令执行读书方法返回一个MySqlDataReader的类型。reader.Read()返回一个Bool类型,表示读取下一条记录,对结果进行输出得到:

对比数据库:

还可以使用Get方法直接对结果进行查询:

 public static void ReadDataBase()
        {
            string str = "select* from mytest.user";
            MySqlCommand cmd = new MySqlCommand(str, connection);
            MySqlDataReader reader = cmd.ExecuteReader();
            while (reader.Read())
            {

                // Console.WriteLine(reader[0].ToString()+"\t"+reader[1].ToString()+"\t"+reader[2].ToString());
                Console.WriteLine(reader.GetInt32("id"));
                Console.WriteLine(reader.GetString("username"));
                Console.WriteLine(reader.GetString("password"));
            }

        }

输出结果:

下面查询一列数据或者一个单独的数据

 public static void VerifyLoad()
        {
            string str = "select username from user ";
            MySqlCommand cmd = new MySqlCommand(str, connection);
            MySqlDataReader reader = cmd.ExecuteReader();
            while (reader.Read())
            {
                for (int i = 0; i < reader.FieldCount; i++)
                {
                    Console.WriteLine(reader[i].ToString());
                }
            }
           
        }

读取的操作都是一样,只需要写对正确的Sql语句:

查询第一个玩家的名字就改变Sql语句为;

下面使用带参的方法判断登陆的用户名密码是否正确:

 public static void VerifyLoad(string username, string password)
        {
            string str = "select *from user where username=@username and password=@password";
            MySqlCommand cmd = new MySqlCommand(str, connection);
            cmd.Parameters.AddWithValue("username", username);
            cmd.Parameters.AddWithValue("password", password);
            MySqlDataReader reader = cmd.ExecuteReader();
            if (reader.Read())
            {
                Console.WriteLine("登陆成功");
            }
            else
            {
                Console.WriteLine("用户名或者密码错误");

            }
        }

在Main方法里调用VerifyLoad("one","1");结果为:。需要注意的是在Sql语句里面的@后面的username和password必须和下面cmd.Parameters.AddWithValue()里面的参数""username""。""password""完全一样,他们的作用是定义@后面的usernme和password。cmd.Parameters.AddWithValue()会把第二个参数赋值个第一个参数,。

或者我们可以使用如下写法:

  public static void VerifyLoad(string name, string word)
        {
          
            string str = "select *from user where username='"+name+"' and password='"+word+"'";           
            MySqlCommand cmd = new MySqlCommand(str, connection);          
            MySqlDataReader reader = cmd.ExecuteReader();
            if (reader.Read())
            {
                Console.WriteLine("登陆成功");
            }
            else
            {
                Console.WriteLine("用户名或者密码错误");

            }
        }

直接对参数代入Sql语句进行读取,就不需要添加cmd.Parameters.AddWithValue()方法。

欢迎加群:4364930讨论。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值