using System.Collections;
using System.Collections.Generic;
using MySql.Data.MySqlClient;
/// <summary>
/// 描 述:数据库工具类
/// 作 者:钤
/// </summary>
public class LinkSQL
{
#region 不公开的方法
static bool flag;
static MySqlConnection Link()
{
return new MySqlConnection("server=localhost;database=course_selection_system;userid=root;password=root;charset = utf8;");
}
static MySqlCommand CommandSelect(MySqlConnection con, string myTable, string myField)
{
MySqlCommand com = new MySqlCommand(string.Format("select {0} from {1}", myField, myTable), con);
return com;
}
static MySqlCommand CommandSelect(MySqlConnection con, string myTable, string myField, string where)
{
MySqlCommand com = new MySqlCommand(string.Format("select {0} from {1} where {2}", myField, myTable, where), con);
return com;
}
#endregion
#region MyInsert
/// <summary>
/// Insert操作
/// </summary>
/// <param name="myTable">表名</param>
/// <param name="myField">列名</param>
/// <param name="value">值</param>
/// <returns>是否执行成功</returns>
public static bool MyInsert(string myTable, string myField, string value)
{
MySqlConnection con = Link();
con.Open();
MySqlCommand com = new MySqlCommand(string.Format("insert into {0}({1}) values('{2}')", myTable, myField, value), con);
flag = com.ExecuteNonQuery() > 0 ? true : false;
con.Close();
return flag;
}
public static bool MyInsert(string myTable, string myField, string value1, string value2)
{
MySqlConnection con = Link();
con.Open();
MySqlCommand com = new MySqlCommand(string.Format("insert into {0}({1}) values('{2}','{3}')", myTable, myField, value1, value2), con);
flag = com.ExecuteNonQuery() > 0 ? true : false;
con.Close();
return flag;
}
public static bool MyInsert(string myTable, string myField, string value1, string value2, string value3)
{
MySqlConnection con = Link();
con.Open();
MySqlCommand com = new MySqlCommand(string.Format("insert into {0}({1}) values('{2}','{3}','{4}')", myTable, myField, value1, value2, value3), con);
flag = com.ExecuteNonQuery() > 0 ? true : false;
con.Close();
return flag;
}
public static bool MyInsert(string myTable, string myField, string value1, string value2, string value3, string value4)
{
MySqlConnection con = Link();
con.Open();
MySqlCommand com = new MySqlCommand(string.Format("insert into {0}({1}) values('{2}','{3}','{4}','{5}')", myTable, myField, value1, value2, value3, value4), con);
flag = com.ExecuteNonQuery() > 0 ? true : false;
con.Close();
return flag;
}
public static bool MyInsert(string myTable, string myField, string value1, string value2, string value3, string value4, string value5)
{
MySqlConnection con = Link();
con.Open();
MySqlCommand com = new MySqlCommand(string.Format("insert into {0}({1}) values('{2}','{3}','{4}','{5}','{6}')", myTable, myField, value1, value2, value3, value4, value5), con);
flag = com.ExecuteNonQuery() > 0 ? true : false;
con.Close();
return flag;
}
#endregion
/// <summary>
/// Delete操作
/// </summary>
/// <param name="myTable">表名</param>
/// <param name="where">条件(记得加引号)</param>
/// <returns>是否执行成功</returns>
public static bool MyDelete(string myTable, string where)
{
MySqlConnection con = Link();
con.Open();
MySqlCommand com = new MySqlCommand(string.Format("delete from {0} where {1}", myTable, where), con);
flag = com.ExecuteNonQuery() > 0 ? true : false;
con.Close();
return flag;
}
/// <summary>
/// Update操作
/// </summary>
/// <param name="myTable">表名</param>
/// <param name="myField">列名</param>
/// <param name="value">值</param>
/// <param name="where">条件</param>
/// <returns>是否执行成功</returns>
public static bool MyUpdate(string myTable, string myField, string value, string where)
{
MySqlConnection con = Link();
con.Open();
MySqlCommand com = new MySqlCommand(string.Format("update {0} set {1} = '{2}' where {3}", myTable, myField, value, where), con);
flag = com.ExecuteNonQuery() > 0 ? true : false;
con.Close();
return flag;
}
/// <summary>
/// 查value是否在列中存在
/// </summary>
/// <param name="myTable">表名</param>
/// <param name="myField">列名</param>
/// <param name="value">数据</param>
/// <returns></returns>
public static bool IsExists(string myTable, string myField, string value)
{
MySqlConnection con = Link();
con.Open();
MySqlCommand com = CommandSelect(con, myTable, myField);
MySqlDataReader reader = com.ExecuteReader();
flag = false;
while (reader.Read())
{
if (reader.GetString(string.Format("{0}", myField)).Equals(value))
{
flag = true;
break;
}
}
reader.Close();
con.Close();
return flag;
}
public static bool IsExists(string myTable, string myField, int value)
{
MySqlConnection con = Link();
con.Open();
MySqlCommand com = CommandSelect(con, myTable, myField);
MySqlDataReader reader = com.ExecuteReader();
flag = false;
while (reader.Read())
{
if (reader.GetInt32("id").Equals(value))
{
flag = true;
break;
}
}
reader.Close();
con.Close();
return flag;
}
/// <summary>
/// mySelect
/// </summary>
/// <param name="myTable">表名</param>
/// <param name="myField">列名</param>
/// <returns>把查询的结果拼接显示</returns>
public static string MySelect(string myTable, string myField, string where)
{
string str = null;
MySqlConnection con = Link();
con.Open();
MySqlCommand com = CommandSelect(con,myTable,myField,where);
MySqlDataReader reader = com.ExecuteReader();
while (reader.Read())
{
str += reader.GetString(string.Format("{0}", myField));
}
reader.Close();
con.Close();
return str;
}
/// <summary>
/// 获取列的内容
/// </summary>
/// <param name="myTable">表名</param>
/// <param name="myField">列名</param>
/// <returns></returns>
public static string[] GetContent(string myTable, string myField)
{
List<string> vs = new List<string>();
MySqlConnection con = Link();
con.Open();
MySqlCommand com = CommandSelect(con, myTable, myField);
MySqlDataReader reader = com.ExecuteReader();
while (reader.Read())
{
vs.Add(reader.GetString(string.Format("{0}", myField)));
}
reader.Close();
con.Close();
return vs.ToArray();
}
public static string[] GetContent(string myTable, string myField, string where)
{
List<string> vs = new List<string>();
MySqlConnection con = Link();
con.Open();
MySqlCommand com = CommandSelect(con, myTable, myField,where);
MySqlDataReader reader = com.ExecuteReader();
while (reader.Read())
{
vs.Add(reader.GetString(string.Format("{0}", myField)));
}
reader.Close();
con.Close();
return vs.ToArray();
}
/// <summary>
/// 把数组的内容纵向打印
/// </summary>
/// <param name="strArray"></param>
/// <returns></returns>
public static string DaYin(string[] strArray)
{
string a = null;
foreach (var item in strArray)
{
a += item + "\n";
}
return a;
}
}