using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;
using System.Data;
using YY_CommonHandle;
namespace YY_DataBaseHandle
{
public class SqlDataBaseHandle
{
public static string SqlConnect = string.Empty;
private static SqlConnection Connection;
#region 基础数据操作
/// <summary>
/// 根据查询语句返回表
/// </summary>
/// <param name="StrQuery"></param>
/// <returns></returns>
public static DataTable GetTable(string StrQuery)
{
try
{
using (SqlConnection SqlCon = new SqlConnection(SqlConnect))
{
SqlCon.Open();
using (SqlCommand SqlCmd = new SqlCommand(StrQuery, SqlCon))
{
DataTable ReTable = new DataTable();
SqlDataAdapter Sqldapter = new SqlDataAdapter(SqlCmd);
Sqldapter.Fill(ReTable);
Sqldapter.Dispose();
return ReTable;
}
}
}
catch (Exception ex)
{
//记录错误信息
FileHandle.ErrorInfoSave(ex.Message + "\r\n" + StrQuery);
return null;
}
}
/// <summary>
/// 根据带参数的查询语句返回表
/// </summary>
/// <param name="StrQuery">查询语句</param>
/// <param name="ListParament">参数数组</param>
/// <returns></returns>
public static DataTable GetTable(string StrQuery, SqlParameter[] ParamentArray)
{
try
{
using (SqlConnection SqlCon = new SqlConnection(SqlConnect))
{
SqlCon.Open();
using (SqlCommand SqlCmd = new SqlCommand(StrQuery, SqlCon))
{
SqlCmd.Parameters.AddRange(ParamentArray);
DataTable ReTable = new DataTable();
SqlDataAdapter Sqldapter = new SqlDataAdapter(SqlCmd);
Sqldapter.Fill(ReTable);
Sqldapter.Dispose();
SqlCmd.Parameters.Clear();
return ReTable;
}
}
}
catch (Exception ex)
{
//记录错误信息
FileHandle.ErrorInfoSave(ex.Message + "错误语句为:(" + StrQuery + ")");
return null;
}
}
/// <summary>
/// 修改语句
/// </summary>
/// <param name="StrQuery">修改语句</param>
/// <param name="ParamentArray">参数</param>
/// <returns></returns>
public static bool UpdateTable(string StrQuery, SqlParameter[] ParamentArray)
{
try
{
using (SqlConnection SqlCon = new SqlConnection(SqlConnect))
{
SqlCon.Open();
using (SqlCommand SqlCmd = new SqlCommand(StrQuery, SqlCon))
{
SqlCmd.Parameters.AddRange(ParamentArray);
int RowCount = SqlCmd.ExecuteNonQuery();
SqlCmd.Parameters.Clear();
if (RowCount > 0)
{
return true;
}
else
{
return false;
}
}
}
}
catch (Exception ex)
{
//记录错误信息
FileHandle.ErrorInfoSave(ex.Message + "错误语句为:(" + StrQuery + ")");
return false;
}
}
/// <summary>
/// 执行SQL
/// </summary>
/// <param name="StrQuery"></param>
/// <returns></returns>
public static bool QueryExecute(string StrQuery)
{
try
{
using (SqlConnection SqlCon = new SqlConnection(SqlConnect))
{
SqlCon.Open();
using (SqlCommand SqlCmd = new SqlCommand(StrQuery, SqlCon))
{
int count = SqlCmd.ExecuteNonQuery();
return true;
}
}
}
catch (Exception ex)
{
//记录错误信息
FileHandle.ErrorInfoSave(ex.Message + "错误语句为:(" + StrQuery + ")");
return false;
}
}
/// <summary>
/// 根据数据库连接字符串判断是否连接成功
/// </summary>
/// <param name="StrConnect">数据连接字符串</param>
/// <returns></returns>
public static bool DbConnect(string StrConnect)
{
try
{
using (SqlConnection SqlCon = new SqlConnection(StrConnect))
{
SqlCon.Open();
if (SqlCon.State == ConnectionState.Open)
{
//保存数据库连接字符串
FileHandle.SaveInfoXMl("databaseInfo", "StrConnect", StrConnect);
return true;
}
else
{
return false;
}
}
}
catch
{
return false;
}
}
#endregion
#region 扩展数据库操作
/// <summary>
/// 开启长连接
/// </summary>
public static void OpenConnection()
{
Connection = new SqlConnection(SqlConnect);
Connection.Open();
}
/// <summary>
/// 修改语句
/// </summary>
/// <param name="StrQuery">修改语句</param>
/// <param name="ParamentArray">参数</param>
/// <returns></returns>
public static bool _UpdateTable(string StrQuery, SqlParameter[] ParamentArray)
{
try
{
using (SqlCommand SqlCmd = new SqlCommand(StrQuery, Connection))
{
SqlCmd.Parameters.AddRange(ParamentArray);
int RowCount = SqlCmd.ExecuteNonQuery();
SqlCmd.Parameters.Clear();
if (RowCount > 0)
{
return true;
}
else
{
return false;
}
}
}
catch (Exception ex)
{
//记录错误信息
FileHandle.ErrorInfoSave(ex.Message + "错误语句为:(" + StrQuery + ")");
return false;
}
}
public static DataTable _GetTable(string strQuery, SqlParameter[] ParamentArray)
{
return null;
}
public static DataTable _GetTable(string strQuery)
{
try
{
using (SqlCommand cmd = new SqlCommand(strQuery, Connection))
{
SqlDataAdapter dapter = new SqlDataAdapter(cmd);
DataTable Table = new DataTable();
dapter.Fill(Table);
dapter.Dispose();
return Table;
}
}
catch (Exception ex)
{
//记录错误信息
FileHandle.ErrorInfoSave(ex.Message + "错误语句为:(" + strQuery + ")");
return null;
}
}
/// <summary>
/// 执行SQL
/// </summary>
/// <param name="StrQuery"></param>
/// <returns></returns>
public static bool _QueryExecute(string StrQuery)
{
try
{
using (SqlCommand SqlCmd = new SqlCommand(StrQuery, Connection))
{
int count = SqlCmd.ExecuteNonQuery();
return true;
}
}
catch (Exception ex)
{
//记录错误信息
FileHandle.ErrorInfoSave(ex.Message + "错误语句为:(" + StrQuery + ")");
return false;
}
}
/// <summary>
/// 关闭长连接
/// </summary>
public static void ColseConnection()
{
Connection.Dispose();
Connection.Close();
}
#endregion
}
}
浙公网安备 33010602011771号