使用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); 的方式。
///
// 获取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 。
///
// 开始一个事务
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 。
///