應(yīng)用程序配置文件存放數(shù)據(jù)庫連接字符串的信息
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
</startup>
<connectionStrings>
<!--SQL Server數(shù)據(jù)庫連接字符串信息-->
<add name="connectionStr" connectionString="server=localhost;uid=sa;pwd=YUNWEN0305;datasource=Student"/>
<!--SQLite數(shù)據(jù)庫連接字符串信息-->
<add name="conStr" connectionString="data source=D:\項(xiàng)目工程文件夾\尚云網(wǎng)絡(luò)項(xiàng)目開發(fā)\尚云網(wǎng)絡(luò)\SQLiteData\Sudons.db;version=3"/>
</connectionStrings>
</configuration>
SQL Server 2014.jpg
對SQL Server數(shù)據(jù)庫操作方法的封裝
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Configuration;
using System.Data.SqlClient;
namespace FuHello
{
public static class sqlHelper
{
//獲取數(shù)據(jù)庫連接字符串
public static string GetConnectionString()
{
return ConfigurationManager.ConnectionStrings["connectionStr"].ConnectionString;
}
#region 封裝一個(gè)執(zhí)行SQL返回受影響的行數(shù)
public static int ExecuteNoQuery(string sqlText, params SqlParameter[] parameters)
{
using (SqlConnection con = new SqlConnection(GetConnectionString()))
{
using (SqlCommand cmd = con.CreateCommand())
{
con.Open();
cmd.CommandText = sqlText;
cmd.Parameters.AddRange(parameters.ToArray());
return cmd.ExecuteNonQuery();
}
}
}
#endregion
#region 封裝一個(gè)執(zhí)行SQL返回查詢結(jié)果中第一行第一列的值
public static object ExecuteScalar(string sqlText, params SqlParameter[] parameters)
{
using (SqlConnection con = new SqlConnection(GetConnectionString()))
{
using (SqlCommand cmd = con.CreateCommand())
{
con.Open();
cmd.CommandText = sqlText;
cmd.Parameters.AddRange(parameters.ToArray());
return cmd.ExecuteScalar();
}
}
}
#endregion
#region 封裝一個(gè)執(zhí)行SQL返回一個(gè)DataTable
public static DataTable GetDataTable(string sqlText, params SqlParameter[] parameters)
{
using (SqlDataAdapter adapter = new SqlDataAdapter(sqlText, GetConnectionString()))
{
DataTable dt = new DataTable();
adapter.SelectCommand.Parameters.AddRange(parameters.ToArray());
adapter.Fill(dt);
return dt;
}
}
#endregion
#region 封裝一個(gè)執(zhí)行SQL返回一個(gè)SqlDataReader
public static SqlDataReader ExecutedReader(string sqlText, params SqlParameter[] parameters)
{
//SqlDataReader要求獨(dú)占SqlConnection對象,并且SqlConnection必須是Open狀態(tài)
SqlConnection con = new SqlConnection(GetConnectionString());
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandText = sqlText;
cmd.Parameters.AddRange(parameters.ToArray());
//SqlDataReader執(zhí)行完成后順便關(guān)閉數(shù)據(jù)庫連接
return cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
#endregion
}
}
SQLite.jpg
對SQLite數(shù)據(jù)庫操作方法的封裝
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;
using System.Data.SQLite;
using System.Configuration;
using System.Data;
namespace FuHello
{
public static class sqliteHelper
{
//從配置文本中讀取連接字符串的方法封裝
public static string conStr = ConfigurationManager.ConnectionStrings["conStr"].ConnectionString;
public static int ExecuteNoNQuery(string sql,params SQLiteParameter[] sParameters)
{
using (SQLiteConnection con = new SQLiteConnection(conStr))
{
con.Open();
SQLiteCommand cmd = con.CreateCommand();
cmd.CommandText = sql;
cmd.Parameters.AddRange(sParameters);
return cmd.ExecuteNonQuery();
}
}
public static object ExecuteScalar(string sql,params SQLiteParameter[] sParameters)
{
using (SQLiteConnection con = new SQLiteConnection(conStr))
{
con.Open();
SQLiteCommand cmd = new SQLiteCommand(sql, con);
cmd.Parameters.AddRange(sParameters);
return cmd.ExecuteScalar();
}
}
public static DataTable GetDataTable(string sql,params SQLiteParameter[] sParameters)
{
using (SQLiteConnection con = new SQLiteConnection(conStr))
{
con.Open();
SQLiteDataAdapter adapter = new SQLiteDataAdapter(sql,con);
adapter.SelectCommand.Parameters.AddRange(sParameters);
DataTable td = new DataTable();
adapter.Fill(td);
return td;
}
}
public static SQLiteDataReader ExecuteReader(string sql,params SQLiteParameter[] sParameters)
{
SQLiteConnection con = new SQLiteConnection(conStr);
con.Open();
SQLiteCommand cmd = new SQLiteCommand(sql, con);
cmd.Parameters.AddRange(sParameters);
return cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
}
}