1、MysqlExecuteReader,我这里是用MysqlExecuteReader将从数据库里面取得的数据放到一个二维数组里面, MysqlExecuteReaderRows主要是为了取得数据集里面行数,要两次连接数据库进行查询,对数据库压力比较大,可以在直接在MysqlExecuteReader采用其他方法获取数据集行数。
public int MysqlExecuteReaderRows(string sql)
{
string connStr = "Server=localhost;Database=airline;Uid=root;Pwd=root;CharSet=utf8;";
MySqlConnection con = new MySqlConnection(connStr);
con.Open();//打开数据库连接
MySqlCommand cmd = new MySqlCommand(sql, con);
MySqlDataReader time = cmd.ExecuteReader();
int i = 0;
while (time.Read()) { i++; }
con.Close();
return i;
}
public string[,] MysqlExecuteReader(string sql,int cloums)
{
int i = MysqlExecuteReaderRows(sql);
string connStr = "Server=localhost;Database=airline;Uid=root;Pwd=root;CharSet=utf8;";
MySqlConnection con = new MySqlConnection(connStr);
con.Open();//打开数据库连接
MySqlCommand cmd = new MySqlCommand(sql, con);
MySqlDataReader time = cmd.ExecuteReader();
//int contime = time.GetOrdinal("name");//字段索引号获取
string id = "";
int m = 0;
string[,] result = new string[i, cloums];
string info = i.ToString();
MessageBox.Show(info);
while (time.Read())
{
for (int n = 0; n < cloums; n++)
{
id = time[n].ToString();
result[m,n] = id;
}
m++;
}
con.Close(); //关闭数据库连接
return result;
}
2、MysqlExecuteNonQuery 这个主要是为了获取sql语句是否在数据库里操作成功。
public string MysqlExecuteNonQuery(string sql)
{
string connStr = "Server=localhost;Database=airline;Uid=root;Pwd=root;CharSet=utf8;";
MySqlConnection con = new MySqlConnection(connStr);
con.Open();//打开数据库连接
MySqlCommand cmd = new MySqlCommand(sql, con);
string no = cmd.ExecuteNonQuery().ToString();
con.Close(); //关闭数据库连接
return no;
}
3、MysqlExecuteScalar
public string MysqlExecuteScalar(string sql)
{
string connStr = "Server=localhost;Database=airline;Uid=root;Pwd=root;CharSet=utf8;";
MySqlConnection con = new MySqlConnection(connStr);
con.Open();//打开数据库连接
MySqlCommand cmd = new MySqlCommand(sql, con);
object tempResult = cmd.ExecuteScalar();
string result = tempResult.ToString();
con.Close(); //关闭数据库连接
return result;
}
4、将取得的数据集直接返回,以便直接利用数据集填充dataGridView
public DataSet MysqlSqlDataAdapter(string sql)
{
string connStr = "Server=localhost;Database=airline;Uid=root;Pwd=root;CharSet=utf8;";
MySqlConnection con = new MySqlConnection(connStr);
con.Open();//打开数据库连接
MySqlCommand cmd = new MySqlCommand(sql, con);
MySqlDataAdapter da = new MySqlDataAdapter();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
da.Fill(ds);
return ds;
}