zoukankan
html css js c++ java
GetData.cs
另一种Access数据库操作类
using
System;
using
System.Data;
using
System.Data.OleDb;
using
System.Text;
namespace
###
3
{
/**/
///
<summary>
///
GetData Access数据库。
///
</summary>
///
public
class
GetData
{
//
private string connString =" Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source =";
//
连接字符串
public
OleDbConnection conn
=
null
;
/*属性*/
#region
/*属性*/
/**/
///
<summary>
///
连接数据库字符串
///
</summary>
private
string
p_connString
=
string
.Empty;
public
string
ConnString
{
get
{
return
p_connString;
}
set
{
p_connString
=
value;
}
}
/**/
///
<summary>
///
表名
///
</summary>
private
string
tableName
=
"
****
"
;
public
string
TableName
{
get
{
return
tableName;
}
set
{
tableName
=
value;
}
}
#endregion
/**/
///
<summary>
///
构造函数
///
</summary>
public
GetData()
{
OleDbConnection conn
=
new
OleDbConnection();
}
/***DbConnet***/
#region
/***DbConnet***/
/**/
///
<summary>
///
定义数据连接的字符串
///
</summary>
///
<returns>
OleDbConnection
</returns>
private
OleDbConnection ConnectToAccess()
{
OleDbConnection conn
=
new
OleDbConnection();
conn.ConnectionString
=
this
.p_connString;
try
{
conn.Open();
}
catch
(Exception ex)
{
throw
ex;
}
return
conn;
}
#endregion
/***查询数据***/
#region
/***查询数据***/
/**/
///
<summary>
///
查询数据
///
</summary>
///
<param name="operInt">
操作查询语句的标示
</param>
///
<returns>
DataSet查询结果
</returns>
public
DataSet GetTreeDataSet(
int
operInt)
{
OleDbDataAdapter da
=
null
;
string
selectSQL
=
getStrByOperInt(operInt);
if
(selectSQL
==
""
)
{
return
null
;
}
conn
=
ConnectToAccess();
da
=
new
OleDbDataAdapter(selectSQL,conn);
DataSet ds
=
new
DataSet();
try
{
da.Fill(ds);
da.Dispose();
}
catch
(Exception ex)
{
throw
new
Exception(ex.Message);
}
finally
{
if
(conn.State
!=
ConnectionState.Closed)
conn.Close();
conn.Dispose();
}
return
ds;
}
/**/
///
<summary>
///
构造查询字符串
///
</summary>
///
<param name="operInt">
操作查询语句的标示
</param>
///
<returns>
string
</returns>
private
string
getStrByOperInt(
int
operInt)
{
string
sqlStr
=
string
.Empty;
try
{
switch
(operInt)
{
case
1
:
sqlStr
=
Get
*
DataStr();
break
;
case
2
:
sqlStr
=
Get1DataStr();
break
;
case
3
:
sqlStr
=
Get2DataStr();
break
;
}
}
catch
(Exception err)
{
throw
new
Exception(err.Message);
}
return
sqlStr;
}
/***清除相同***/
#region
/***清除相同***/
/**/
///
<summary>
///
清除StatckInfo表格中的相同记录
///
</summary>
///
<returns>
是否成功清空
</returns>
public
bool
DeleteSameStatckInfoData()
{
int
rowCount
=-
1
;
try
{
string
strDelete
=
DeleteSameDataStr();
conn
=
ConnectToAccess();
OleDbCommand deleteCmd
=
new
OleDbCommand(strDelete.ToString(),conn);
rowCount
=
deleteCmd.ExecuteNonQuery();
}
catch
(Exception ex)
{
throw
new
Exception(ex.Message);
}
finally
{
if
(conn.State
!=
ConnectionState.Closed)
conn.Close();
conn.Dispose();
}
if
(rowCount
==-
1
||
rowCount
==
0
)
{
return
false
;
}
else
{
return
true
;
}
}
/**/
///
<summary>
///
删除##表中部分相同数据
///
</summary>
///
<returns>
查询字符串
</returns>
private
string
DeleteSameDataStr()
{
StringBuilder strDelete
=
new
StringBuilder();
strDelete.Append(
"
DELETE *
"
);
strDelete.Append(
"
FROM ##
"
);
strDelete.Append(
"
WHERE id NOT IN (
"
);
strDelete.Append(
"
SELECT MAX(id) FROM ##
"
);
strDelete.Append(
"
GROUP BY name,card,Fundsum,ID)
"
);
return
strDelete.ToString();
}
#endregion
/***存在验证***/
#region
/***存在验证***/
/**/
///
<summary>
///
某记录是否存在的查询
///
</summary>
///
<param name="statckinfo">
一条记录
</param>
///
<returns>
是否存在
</returns>
public
bool
GetDataExitsOrNot(StatckInfo statckinfo)
{
int
rowCount
=-
1
;
try
{
StringBuilder strSelect
=
new
StringBuilder();
strSelect.Append(
"
SELECT count(*) as co FROM #
"
);
strSelect.Append(
"
'
"
);
conn
=
ConnectToAccess();
OleDbCommand selectCmd
=
new
OleDbCommand(strSelect.ToString(),conn);
OleDbDataReader dr
=
selectCmd.ExecuteReader();
if
(dr.Read())
{
if
(
!
(dr[
"
co
"
]
is
System.DBNull))
rowCount
=
Int32.Parse(dr[
"
co
"
].ToString());
}
}
catch
(Exception ex)
{
throw
new
Exception(ex.Message);
}
finally
{
if
(conn.State
!=
ConnectionState.Closed)
conn.Close();
conn.Dispose();
}
if
(rowCount
==-
1
||
rowCount
==
0
)
{
return
false
;
}
else
{
return
true
;
}
}
#endregion
/***合并字符***/
#region
/***合并字符***/
/**/
///
<summary>
///
不同sql语句查询数据库,填充DataSet
///
</summary>
///
<param name="selectSQL">
string
</param>
///
<returns>
DataSet
</returns>
public
DataSet GetOtherDataByIDreceipt(
string
selectSQL)
{
if
(selectSQL
==
""
)
{
return
null
;
}
conn
=
ConnectToAccess();
OleDbDataAdapter da
=
new
OleDbDataAdapter(selectSQL,conn);
DataSet ds
=
new
DataSet();
try
{
da.Fill(ds);
da.Dispose();
}
catch
(Exception ex)
{
throw
new
Exception(ex.Message);
}
finally
{
if
(conn.State
!=
ConnectionState.Closed)
conn.Close();
conn.Dispose();
}
return
ds;
}
/**/
///
<summary>
///
循环DataSet,用","将所有ID合并成“,”间隔的字符串
///
</summary>
///
<param name="ds">
DataSet
</param>
///
<returns>
合并后的字符串
</returns>
private
string
getStrByDatset(DataSet ds)
{
string
characterStr
=
string
.Empty;
if
(ds
==
null
)
{
return
""
;
}
try
{
DataTable myTable
=
ds.Tables[
0
];
int
count
=
myTable.Rows.Count;
for
(
int
i
=
0
;i
<
myTable.Rows.Count;i
++
)
{
string
name
=
myTable.Rows[i][
0
].ToString();
characterStr
+=
name
+
"
,
"
;
}
}
catch
(Exception ex)
{
throw
new
Exception(ex.Message);
}
return
characterStr;
}
#endregion
/***清空表格***/
#region
/***清空表格***/
/**/
///
<summary>
///
清空##表格
///
</summary>
///
<returns>
是否成功清空
</returns>
public
bool
DeleteAllStatck()
{
int
rowCount
=-
1
;
try
{
string
strDelete
=
"
delete * FROM #·#
"
;
conn
=
ConnectToAccess();
OleDbCommand deleteCmd
=
new
OleDbCommand(strDelete.ToString(),conn);
rowCount
=
deleteCmd.ExecuteNonQuery();
}
catch
(Exception ex)
{
throw
new
Exception(ex.Message);
}
finally
{
if
(conn.State
!=
ConnectionState.Closed)
conn.Close();
conn.Dispose();
}
if
(rowCount
==-
1
||
rowCount
==
0
)
{
return
false
;
}
else
{
return
true
;
}
}
#endregion
}
}
查看全文
相关阅读:
django缓存机制
RBAC基于角色访问控制
Book系列十大接口
xadmin的使用
JWT认证
自动生成接口文档
drf的过滤排序分页异常处理
认证权限解析频率
python学习之内置模块补充
python学习之内置模块补充作业
原文地址:https://www.cnblogs.com/flashicp/p/697929.html
最新文章
day62——路由层、视图层
day62作业
day61——orm数据的删改查、django请求生命周期流程图、路由层
day60——静态文件配置、request对象、链接数据库、ORM
day59——简易web框架、django
day58——jQuery事件特性、bootstrap基本使用
day57——jQuery操作标签/绑定事件
day56——原生js绑定事件、jQuery简介及各个选择器、筛选器
ⅩⅣ:作业
ⅩⅢ:作业
热门文章
ⅩⅢ:函数
ⅩⅡ:作业
ⅩⅡ:操作文件的方法
ⅩⅡ:文件的操作模式---x模式和b模式
Ⅹ:作业
Ⅹ:文件处理
Ⅸ:字符编码
Ⅷ:作业
封装一个CommonResponse对象
rest_frameworkapi.html错误
Copyright © 2011-2022 走看看