bool isExist = false;
string cnt = new MySQLConnectionString("localhost", "studentbasedata", "root", "sunmingshi", 3306).AsString;
using (MySQLConnection c = new MySQLConnection(cnt))
{
c.Open();
MySQLCommand msc = (MySQLCommand)c.CreateCommand();
msc.CommandText = "select name,password from master";//这里会读到master里所有的名字和密码吗??
using (MySQLDataReader msdr =(MySQLDataReader) msc.ExecuteReader(CommandBehavior.CloseConnection))
{
MySQLDataAdapter msda = new MySQLDataAdapter(msc.CommandText, c);
DataTable dt = new DataTable();
msda.Fill(dt);//
MySQLDataReader reader = (MySQLDataReader)msc.ExecuteReader(); while (msdr.Read())
{
int i = 0;
string str = msdr.GetValue(i).ToString();//这里也不懂了
if (id.Text == str)//如果存在和输入id相同的name,就去比较密码
{
isExist = true;
MessageBox.Show(isExist.ToString()+str, "Get It");
break;
}
else//如果检索之后不存在该怎么做?
{
//MessageBox.Show("Don't Exist!", "Null");
//break;
}
i++;
}
}
现在还弄不明白怎么取出MySQL里的数据,我想做的就是一个登陆程序,把输入的账号密码和数据库里的匹配,如果匹配到就登陆成功。
不过不知道怎么去匹配了,我写的上面的代码,每次只能取到name的值取不到password的值。
自学的百度了也没找到该怎么做,请大家帮帮忙吧。有示例代码也行,先谢过了!!
string cnt = new MySQLConnectionString("localhost", "studentbasedata", "root", "sunmingshi", 3306).AsString;
using (MySQLConnection c = new MySQLConnection(cnt))
{
c.Open();
MySQLCommand msc = (MySQLCommand)c.CreateCommand();
msc.CommandText = "select name,password from master";//这里会读到master里所有的名字和密码吗??
using (MySQLDataReader msdr =(MySQLDataReader) msc.ExecuteReader(CommandBehavior.CloseConnection))
{
MySQLDataAdapter msda = new MySQLDataAdapter(msc.CommandText, c);
DataTable dt = new DataTable();
msda.Fill(dt);//
MySQLDataReader reader = (MySQLDataReader)msc.ExecuteReader(); while (msdr.Read())
{
int i = 0;
string str = msdr.GetValue(i).ToString();//这里也不懂了
if (id.Text == str)//如果存在和输入id相同的name,就去比较密码
{
isExist = true;
MessageBox.Show(isExist.ToString()+str, "Get It");
break;
}
else//如果检索之后不存在该怎么做?
{
//MessageBox.Show("Don't Exist!", "Null");
//break;
}
i++;
}
}
现在还弄不明白怎么取出MySQL里的数据,我想做的就是一个登陆程序,把输入的账号密码和数据库里的匹配,如果匹配到就登陆成功。
不过不知道怎么去匹配了,我写的上面的代码,每次只能取到name的值取不到password的值。
自学的百度了也没找到该怎么做,请大家帮帮忙吧。有示例代码也行,先谢过了!!
DataTable dt = new DataTable();
msda.Fill(dt);//还有这个DataTable怎么用啊?
直接上代码using System;
using System.Configuration;
using System.Collections;
using System.Data;
using MySql.Data;
using MySql.Data.MySqlClient;
namespace MyData
{
/// <summary>
/// 通用数据库类MySQL
/// </summary>
public class Class_mysql_conn
{
//public static string ConnStr = @"server=数据库;uid=帐号;pwd=密码;database=数据库;charset=utf8";
public static string ConnStr = "";//MyData.Properties.Settings.Default.my_soft_mysqlConn + "pwd=密码;charset=utf8;"; //打开数据库链接
public static MySqlConnection Open_Conn(string ConnStr)
{
MySqlConnection Conn = new MySqlConnection(ConnStr);
Conn.Open();
return Conn;
}
//关闭数据库链接
public static void Close_Conn(MySqlConnection Conn)
{
if (Conn != null)
{
Conn.Close();
Conn.Dispose();
}
GC.Collect();
} //运行MySql语句
public static int Run_SQL(string SQL, string ConnStr)
{
MySqlConnection Conn = Open_Conn(ConnStr);
MySqlCommand Cmd = Create_Cmd(SQL, Conn);
try
{
int result_count = Cmd.ExecuteNonQuery();
Close_Conn(Conn);
return result_count;
}
catch
{
Close_Conn(Conn);
return 0;
}
}
// 生成Command对象
public static MySqlCommand Create_Cmd(string SQL, MySqlConnection Conn)
{
MySqlCommand Cmd = new MySqlCommand(SQL, Conn);
return Cmd;
}
// 运行MySql语句返回 DataTable
public static DataTable Get_DataTable(string SQL, string ConnStr, string Table_name)
{
MySqlDataAdapter Da = Get_Adapter(SQL, ConnStr);
DataTable dt = new DataTable(Table_name);
Da.Fill(dt);
return dt;
}
// 运行MySql语句返回 MySqlDataReader对象
public static MySqlDataReader Get_Reader(string SQL, string ConnStr)
{
MySqlConnection Conn = Open_Conn(ConnStr);
MySqlCommand Cmd = Create_Cmd(SQL, Conn);
MySqlDataReader Dr;
try
{
Dr = Cmd.ExecuteReader(CommandBehavior.Default);
}
catch
{
throw new Exception(SQL);
}
Close_Conn(Conn);
return Dr;
} // 运行MySql语句返回 MySqlDataAdapter对象
public static MySqlDataAdapter Get_Adapter(string SQL, string ConnStr)
{
MySqlConnection Conn = Open_Conn(ConnStr);
MySqlDataAdapter Da = new MySqlDataAdapter(SQL, Conn);
return Da;
} // 运行MySql语句,返回DataSet对象
public static DataSet Get_DataSet(string SQL, string ConnStr, DataSet Ds)
{
MySqlDataAdapter Da = Get_Adapter(SQL, ConnStr);
try
{
Da.Fill(Ds);
}
catch (Exception Err)
{
throw Err;
}
return Ds;
}
// 运行MySql语句,返回DataSet对象
public static DataSet Get_DataSet(string SQL, string ConnStr, DataSet Ds, string tablename)
{
MySqlDataAdapter Da = Get_Adapter(SQL, ConnStr);
try
{
Da.Fill(Ds, tablename);
}
catch (Exception Ex)
{
throw Ex;
}
return Ds;
}
// 运行MySql语句,返回DataSet对象,将数据进行了分页
public static DataSet Get_DataSet(string SQL, string ConnStr, DataSet Ds, int StartIndex, int PageSize, string tablename)
{
MySqlConnection Conn = Open_Conn(ConnStr);
MySqlDataAdapter Da = Get_Adapter(SQL, ConnStr);
try
{
Da.Fill(Ds, StartIndex, PageSize, tablename);
}
catch (Exception Ex)
{
throw Ex;
}
Close_Conn(Conn);
return Ds;
}
// 返回MySql语句执行结果的第一行第一列
public static string Get_Row1_Col1_Value(string SQL, string ConnStr)
{
MySqlConnection Conn = Open_Conn(ConnStr);
string result;
MySqlDataReader Dr;
try
{
Dr = Create_Cmd(SQL, Conn).ExecuteReader();
if (Dr.Read())
{
result = Dr[0].ToString();
Dr.Close();
}
else
{
result = "";
Dr.Close();
}
}
catch
{
throw new Exception(SQL);
}
Close_Conn(Conn);
return result;
} }
}
不应该 先查帐号是否存在 再查密码是否正确