数据库访问模块
1
namespace Skyiv.Data.SqlClient
2
{
3
using System.Data;
4
using System.Data.SqlClient;
5
6
class SqlObject
7
{
8
protected SqlConnection conn;
9
10
// 构造函数,参数为连接串。
11
protected SqlObject(string strConn)
12
{
13
conn = new SqlConnection(strConn);
14
}
15
16
// 执行SQL,将结果返回到数据集中。
17
public DataSet DsQuery(string strSql, params SqlParameter [] paras)
18
{
19
SqlCommand cmd = new SqlCommand(strSql, conn);
20
foreach (SqlParameter para in paras)
21
{
22
cmd.Parameters.Add(para);
23
}
24
SqlDataAdapter apt = new SqlDataAdapter(cmd);
25
DataSet ds = new DataSet();
26
apt.Fill(ds);
27
return ds;
28
}
29
30
// 执行SQL,将结果返回到数据表中。
31
public DataTable DtQuery(string strSql, params SqlParameter [] paras)
32
{
33
return DsQuery(strSql, paras).Tables[0];
34
}
35
36
// 执行SQL,将结果返回到数据行中。
37
public DataRow DrQuery(string strSql, params SqlParameter [] paras)
38
{
39
DataTable dt = DsQuery(strSql, paras).Tables[0];
40
if (dt.Rows.Count == 0) return null;
41
else return dt.Rows[0];
42
}
43
44
// 执行SQL,并返回查询所返回的结果集中第一行的第一列。
45
public object ScalarQuery(string strSql, params SqlParameter [] paras)
46
{
47
SqlCommand cmd = new SqlCommand(strSql, conn);
48
try
49
{
50
cmd.Connection.Open();
51
foreach (SqlParameter para in paras)
52
{
53
cmd.Parameters.Add(para);
54
}
55
return cmd.ExecuteScalar();
56
}
57
finally
58
{
59
cmd.Connection.Close();
60
}
61
}
62
63
// 执行SQL,返回受影响的行数。
64
public int ExecNonQuery(string strSql, params SqlParameter [] paras)
65
{
66
SqlCommand cmd = new SqlCommand(strSql, conn);
67
cmd.Connection.Open();
68
foreach (SqlParameter para in paras)
69
{
70
cmd.Parameters.Add(para);
71
}
72
int n = cmd.ExecuteNonQuery();
73
cmd.Connection.Close();
74
return n;
75
}
76
77
// 执行SQLs,返回受影响的行数。
78
public int ExecNonQuerys(params string [] strSqls)
79
{
80
SqlCommand cmd = new SqlCommand();
81
cmd.Connection = conn;
82
cmd.Connection.Open();
83
int n = 0;
84
foreach (string strSql in strSqls)
85
{
86
cmd.CommandText = strSql;
87
n += cmd.ExecuteNonQuery();
88
}
89
cmd.Connection.Close();
90
return n;
91
}
92
93
} // End of class SqlObject
94
} // End of namespace Skyiv.Data.Sql
namespace Skyiv.Data.SqlClient2
{3
using System.Data;4
using System.Data.SqlClient;5

6
class SqlObject7
{8
protected SqlConnection conn;9

10
// 构造函数,参数为连接串。11
protected SqlObject(string strConn)12
{13
conn = new SqlConnection(strConn);14
}15

16
// 执行SQL,将结果返回到数据集中。17
public DataSet DsQuery(string strSql, params SqlParameter [] paras)18
{19
SqlCommand cmd = new SqlCommand(strSql, conn);20
foreach (SqlParameter para in paras)21
{22
cmd.Parameters.Add(para);23
}24
SqlDataAdapter apt = new SqlDataAdapter(cmd);25
DataSet ds = new DataSet();26
apt.Fill(ds);27
return ds;28
}29

30
// 执行SQL,将结果返回到数据表中。31
public DataTable DtQuery(string strSql, params SqlParameter [] paras)32
{33
return DsQuery(strSql, paras).Tables[0];34
}35

36
// 执行SQL,将结果返回到数据行中。37
public DataRow DrQuery(string strSql, params SqlParameter [] paras)38
{39
DataTable dt = DsQuery(strSql, paras).Tables[0];40
if (dt.Rows.Count == 0) return null;41
else return dt.Rows[0];42
}43

44
// 执行SQL,并返回查询所返回的结果集中第一行的第一列。45
public object ScalarQuery(string strSql, params SqlParameter [] paras)46
{47
SqlCommand cmd = new SqlCommand(strSql, conn);48
try49
{50
cmd.Connection.Open();51
foreach (SqlParameter para in paras)52
{53
cmd.Parameters.Add(para);54
}55
return cmd.ExecuteScalar();56
}57
finally58
{59
cmd.Connection.Close();60
}61
}62

63
// 执行SQL,返回受影响的行数。64
public int ExecNonQuery(string strSql, params SqlParameter [] paras)65
{66
SqlCommand cmd = new SqlCommand(strSql, conn);67
cmd.Connection.Open();68
foreach (SqlParameter para in paras)69
{70
cmd.Parameters.Add(para);71
}72
int n = cmd.ExecuteNonQuery();73
cmd.Connection.Close();74
return n;75
}76

77
// 执行SQLs,返回受影响的行数。78
public int ExecNonQuerys(params string [] strSqls)79
{80
SqlCommand cmd = new SqlCommand();81
cmd.Connection = conn;82
cmd.Connection.Open();83
int n = 0;84
foreach (string strSql in strSqls)85
{86
cmd.CommandText = strSql;87
n += cmd.ExecuteNonQuery();88
}89
cmd.Connection.Close();90
return n;91
}92

93
} // End of class SqlObject94
} // End of namespace Skyiv.Data.Sql


浙公网安备 33010602011771号