zoukankan
html css js c++ java
数据访问函数库的使用方法(二)—— 获取记录集和使用事务的方法
使用SQL语句来获取记录集的方法
string
sql
=
"
select col1,col2,col3
from TableName where
"
;
//
获取DataTable
DataTable dt
=
dal.RunSqlDataTable(sql);
//
获取DataSet
sql
=
"
select col1,col2,col3
from TableName where
"
;
sql
+=
"
select col1,col2,col3
from TableName2 where
"
;
sql
+=
"
select col1,col2,col3
from TableName3 where
"
;
//
DataSet ds
=
dal.RunSqlDataSet(sql);
//
ds.Tables[0];
//
TableName 的记录
//
ds.Tables[1];
//
TableName2 的记录
//
ds.Tables[2];
//
TableName3 的记录
//
只获取一条记录,记录保存到 string[] 里面
sql
=
"
select col1,col2,col3
from TableName where ID = 1
"
;
string
[] values1
=
dal.RunSqlStrings(sql);
//
只获取一条记录,记录保存到 DataRow 里面。可以通过字段名称来获取
DataRow dr
=
dal.RunSqlDataRow(sql);
//
只获取第一条记录的第一个字段的值
sql
=
"
select col1 from TableName where ID = 1
"
;
sql
=
"
select sum(col2) from TableName
"
;
string
colValue
=
dal.RunSqlGetID(sql);
//
获取每一条记录的第一个字段的值。
sql
=
"
select col1 from TableName where KindID = 1
"
;
sql
=
"
select sum(col2) from TableName group by KindID
"
;
string
[] values2
=
dal.RunSqlStringsByRow(sql);
/**/
///
主要以DataTable 为数据载体。
///
使用 DataTable 可以很方便的实现“通用”性,可以直接和许多控件绑定。
///
使用 string[] 保存一条记录的数据,可以更轻量快捷的提取和保存数据。适用于字段比较少的情况。
///
如果字段比较多可以使用 dal.RunSqlDataRow(sql); 的方式。
///
启用事务的方法
//
使用事务的实例
//
开始一个事务
dal.TranBegin();
//
这时会open 一个连接。
dal.InsertDataStr(
"
TableName1
"
,str1,str);
//
添加数据
if
(dal.ErrorMsg.Length
>
2
)
{
//
出现异常,函数内部会自动回滚事务,并且关闭连接
return
;
//
终止程序,最好能够给出提示
}
//
判断是否正常执行,
if
(
false
)
//
没有正常执行,回滚事务
{
dal.TranRollBack();
//
回滚事务,自动关闭连接 。
return
;
//
不能继续向下执行!
}
//
执行下一个操作
dal.UpdateData(
"
TableName2
"
,str1,str,
"
ID = 2
"
);
//
修改数据
if
(dal.ErrorMsg.Length
>
2
)
{
//
出现异常,函数内部会自动回滚事务,并且关闭连接
return
;
//
终止程序,最好能够给出提示
}
//
判断是否正常执行,
if
(
false
)
//
没有正常执行,回滚事务
{
dal.TranRollBack();
//
回滚事务,自动关闭连接 。
return
;
//
不能继续向下执行!
}
//
其他操作。
//
比如 : colValue = dal.RunSqlGetID(sql);
dal.TranCommit();
//
提交事务,自动关闭连接 。
/**/
///
优点:在函数内部自动处理连接的打开和关闭的问题。
///
sql语句出现错误的时候,会在/log/里面建立一个文本文件,记录出错的信息。
///
可以通过查看这个文件,快速分析出来出错原因,在使用sql语句的情况下帮助很大。
///
缺点:没有提供 DataReader 。
///
查看全文
相关阅读:
第七周上机
第六周作业
第六周上机作业
第五周上机作业
java第四周作业
上机作业
第三次java作业
java作业
第七周作业
JAVA第七周上机作业
原文地址:https://www.cnblogs.com/jyk/p/1174727.html
最新文章
[LeetCode每日1题][困难] 460. LFU缓存
[LeetCode每日1题][困难] 42. 接雨水
[LeetCode每日1题][中等] 289. 生命游戏
[LeetCode每日1题][简单] 面试题62. 圆圈中最后剩下的数字
[LeetCode每日1题][中等] 1162. 地图分析
[LeetCode每日1题][简单] 198. 打家劫舍 / 面试题 17.16.按摩师
[LeetCode每日1题][中等] 945. 使数组唯一的最小增量
[LeetCode每日1题][中等] 365. 水壶问题
[笔记]二分查找的几种写法
如果有一天我变得很有钱组——Beta冲刺day1
热门文章
凡事预则立随笔
alpha阶段问题总结随笔
安卓测试
如果有一天我变得很有钱——alpha冲刺测试随笔
如果有一天我变得很有钱——alpha冲刺总结
如果有一天我变得很有钱组——alpha冲刺day10
如果有一天我变得很有钱组——alpha冲刺day9
如果有一天我变得很有钱组——alpha冲刺day8
第八周上机
第七周作业
Copyright © 2011-2022 走看看