从数据库中提取数据到CheckBoxList控件(SqlClient/OleDb/Odbc)
来源:互联网 发布:jsocket编程聊天室 编辑:程序博客网 时间:2024/06/08 14:03
#region 从数据库中提取数据到CheckBoxList控件
/// <summary>
/// 从数据库中提取数据到CheckBoxList控件
/// </summary>
/// <param name="strTableName">数据库表名称</param>
/// <param name="strFieldName">数据库字段名称</param>
/// <param name="strIDName">数据库ID名称</param>
/// <param name="MyCheckBoxList"></param>
/// <returns>执行结果</returns>
public bool GetLoadList(string strTableName, string strFieldName, string strIDName, CheckBoxList MyCheckBoxList)
{
// 数据库连接参数(对客户端应用程序配置文件的访问)
string strConn = @ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString;
// 数据库类型参数(对客户端应用程序配置文件的访问)
string strDBType = @ConfigurationManager.ConnectionStrings["myConnectionString"].ProviderName;
// 数据库的一个连接
IDbConnection myConn;
// 创建提供程序对数据源类的实现的实例
System.Data.Common.DbProviderFactory MyFactory = System.Data.Common.DbProviderFactories.GetFactory(strDBType);
// 创建连接数据库的一个打开连接
myConn = MyFactory.CreateConnection();
// 获取或设置用于打开数据库的字符串
myConn.ConnectionString = strConn;
try
{
// 使用 ConnectionString 所指定的属性设置打开数据库连接
myConn.Open();
// 数据库SQL语句
string strSQL = @"SELECT " + strIDName + "," + strFieldName + " FROM " + strTableName.ToString().Trim().ToString() + " ORDER BY " + strFieldName + " DESC";
// 数据库类型
switch (strDBType)
{
/* ------------------------------------------------------------------------------------------------ */
/* 使用SqlServer数据库 */
/* ------------------------------------------------------------------------------------------------ */
case "System.Data.SqlClient":
// 创建要对数据库执行的一个SQL语句或存储过程
SqlCommand mySqlComm;
// 连接到数据源时执行的 SQL 语句
mySqlComm = (SqlCommand)myConn.CreateCommand();
// 设置数据库连接超时
mySqlComm.CommandTimeout = 0;
// 指定如何解释命令字符串
mySqlComm.CommandType = CommandType.Text;
// 数据库SQL语句
mySqlComm.CommandText = strSQL;
// 提供一种从数据库读取只进的一种方式
SqlDataReader mySqlReader = mySqlComm.ExecuteReader();
// 从集合中移除所有 ListItem 对象
MyCheckBoxList.Items.Clear();
// 读取数据,判断是否有数据
if (mySqlReader.HasRows)
{
// 返回数据库记录到数据源
MyCheckBoxList.DataSource = mySqlReader;
// 获取或设置为列表项提供文本内容的数据源字段
MyCheckBoxList.DataTextField = strFieldName;
// 获取或设置为各列表项提供值的数据源字段
MyCheckBoxList.DataValueField = strIDName;
// 创建服务器控件属性与数据源之间的绑定
MyCheckBoxList.DataBind();
// 关闭
if ((mySqlReader != null) || (mySqlReader.IsClosed != true))
{
// 关闭
mySqlReader.Close();
}
// 释放内存
mySqlReader.Dispose();
// 返回 成功
return true;
}
else
{
// 清除内容
MyCheckBoxList.Items.Clear();
if ((mySqlReader != null) || (mySqlReader.IsClosed != true))
{
// 关闭
mySqlReader.Close();
}
// 释放内存
mySqlReader.Dispose();
}
break;
/* ------------------------------------------------------------------------------------------------ */
/* 使用Access数据库 */
/* ------------------------------------------------------------------------------------------------ */
case "System.Data.OleDb":
// 创建要对数据库执行的一个SQL语句或存储过程
OleDbCommand MyOleDbComm;
// 连接到数据源时执行的 SQL 语句
MyOleDbComm = (OleDbCommand)myConn.CreateCommand();
// 设置数据库连接超时
MyOleDbComm.CommandTimeout = 0;
// 指定如何解释命令字符串
MyOleDbComm.CommandType = CommandType.Text;
// 数据库SQL语句
MyOleDbComm.CommandText = strSQL;
// 提供一种从数据库读取只进的一种方式
OleDbDataReader MyOleDbReader = MyOleDbComm.ExecuteReader();
// 从集合中移除所有 ListItem 对象
MyCheckBoxList.Items.Clear();
// 读取数据,判断是否有数据
if (MyOleDbReader.HasRows)
{
// 返回数据库记录到数据源
MyCheckBoxList.DataSource = MyOleDbReader;
// 获取或设置为列表项提供文本内容的数据源字段
MyCheckBoxList.DataTextField = strFieldName;
// 获取或设置为各列表项提供值的数据源字段
MyCheckBoxList.DataValueField = strIDName;
// 创建服务器控件属性与数据源之间的绑定
MyCheckBoxList.DataBind();
// 关闭
if ((MyOleDbReader != null) || (MyOleDbReader.IsClosed != true))
{
// 关闭
MyOleDbReader.Close();
}
// 释放内存
MyOleDbReader.Dispose();
// 返回 成功
return true;
}
else
{
// 清除内容
MyCheckBoxList.Items.Clear();
if ((MyOleDbReader != null) || (MyOleDbReader.IsClosed != true))
{
// 关闭
MyOleDbReader.Close();
}
// 释放内存
MyOleDbReader.Dispose();
}
break;
/* ------------------------------------------------------------------------------------------------ */
/* 使用Odbc数据库 */
/* ------------------------------------------------------------------------------------------------ */
case "System.Data.Odbc":
// 创建要对数据库执行的一个SQL语句或存储过程
OdbcCommand MyOdbcComm;
// 连接到数据源时执行的 SQL 语句
MyOdbcComm = (OdbcCommand)myConn.CreateCommand();
// 设置数据库连接超时
MyOdbcComm.CommandTimeout = 0;
// 指定如何解释命令字符串
MyOdbcComm.CommandType = CommandType.Text;
// 数据库SQL语句
MyOdbcComm.CommandText = strSQL;
// 提供一种从数据库读取只进的一种方式
OdbcDataReader MyOdbcReader = MyOdbcComm.ExecuteReader();
// 从集合中移除所有 ListItem 对象
MyCheckBoxList.Items.Clear();
// 读取数据,判断是否有数据
if (MyOdbcReader.HasRows)
{
// 清除内容
MyCheckBoxList.Items.Clear();
// 返回数据库记录到数据源
MyCheckBoxList.DataSource = MyOdbcReader;
// 获取或设置为列表项提供文本内容的数据源字段
MyCheckBoxList.DataTextField = strFieldName;
// 获取或设置为各列表项提供值的数据源字段
MyCheckBoxList.DataValueField = strIDName;
// 创建服务器控件属性与数据源之间的绑定
MyCheckBoxList.DataBind();
// 关闭
if ((MyOdbcReader != null) || (MyOdbcReader.IsClosed != true))
{
// 关闭
MyOdbcReader.Close();
}
// 释放内存
MyOdbcReader.Dispose();
// 返回 成功
return true;
}
else
{
// 清除内容
MyCheckBoxList.Items.Clear();
if ((MyOdbcReader != null) || (MyOdbcReader.IsClosed != true))
{
// 关闭
MyOdbcReader.Close();
}
// 释放内存
MyOdbcReader.Dispose();
}
break;
default:
break;
}
// 返回失败
return false;
}
catch (SqlException Exp) // 数据库操作异常处理
{
// 异常信息
Console.Write(Exp.Message.ToString());
if (myConn.State == ConnectionState.Open)
{
// 关闭数据库连接
myConn.Close();
}
// 释放内存
myConn.Dispose();
// 返回失败
return false;
}
catch (OleDbException Exp) // 数据库操作异常处理
{
// 异常信息
Console.Write(Exp.Message.ToString());
if (myConn.State == ConnectionState.Open)
{
// 关闭数据库连接
myConn.Close();
}
// 释放内存
myConn.Dispose();
// 返回失败
return false;
}
catch (OdbcException Exp) // 数据库操作异常处理
{
// 异常信息
Console.Write(Exp.Message.ToString());
if (myConn.State == ConnectionState.Open)
{
// 关闭数据库连接
myConn.Close();
}
// 释放内存
myConn.Dispose();
// 返回失败
return false;
}
catch (Exception Exp) // 异常处理
{
// 异常信息
Console.Write(Exp.Message.ToString());
if (myConn.State == ConnectionState.Open)
{
// 关闭数据库连接
myConn.Close();
}
// 释放内存
myConn.Dispose();
// 返回失败
return false;
}
finally // 执行完毕清除在try块中分配的任何资源
{
if (myConn.State == ConnectionState.Open)
{
// 关闭数据库连接
myConn.Close();
}
// 释放内存
myConn.Dispose();
}
}
#endregion
- 从数据库中提取数据到CheckBoxList控件(SqlClient/OleDb/Odbc)
- 从数据库中提取数据到CheckBoxList控件
- 从数据库中提取数据并注入到对象中
- 绑定数据到CheckBoxList控件
- 从文本文件提取数据到数据库指定的字段中
- 从数据库中提取文件到磁盘
- 使用JXL从Excel中提取数据插入到数据库中
- SQLServer 从xml 文件中提取节点数据到数据库中
- WPF提取oracle数据库中数据显示到DataGrid控件上
- CheckBoxList 显示,保存到数据库,从数据库读出来操作
- 从数据库中提取到ueditor并且重新编辑
- Qt将从数据库中查询到的字符串数据输出在自定义的控件中
- ultrachart的使用(一):从数据库中提取数据
- ultrachart的使用(一):从数据库中提取数据
- 利用ADO从数据库的表中提取数据
- 利用OleDb将xml文件的数据导入到数据库中
- XML的数据提取和保存到数据库中
- CascadingDropDown从数据库中读取数据绑定到DropDownList控件上
- 自用logic标签例子
- 我心目中的计算机科学大牛
- 合并表头
- jquery select option
- How to instantiate I2C devices(From kernel-tree/Documentation/i2c)
- 从数据库中提取数据到CheckBoxList控件(SqlClient/OleDb/Odbc)
- 独立安装axis2
- 用dom解析xml的方法实现二级菜单级联及它们中出现的浏览器兼容问题
- struts nested标签
- bootloader
- RTP与RTCP协议介绍
- 嵌入式WEB中CGI调用另外的html
- VS2005 Debug时提示没有找到MSVCR80D.dll的解决办法
- An experiment