| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 846 人关注过本帖
标题:我要疯了。数据库连接的问题
只看楼主 加入收藏
mextb1860
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2005-7-10
收藏
 问题点数:0 回复次数:9 
我要疯了。数据库连接的问题

Default.aspx页面

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DataGrid1.DataSource =DbSqlOperation.GetDataReader("Select * from Menu");
DataGrid1.DataBind();
DbSqlOperation.CloseCon();
}
}
----------------------------------------------------------------------
DbSqlOperation.cs页面
public class DbSqlOperation
{
protected static OleDbConnection Con = Dbcon.CreateCon();
protected static OleDbCommand Cmd = new OleDbCommand();
protected static OleDbDataReader dr = null;
public DbSqlOperation()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
/// <summary>
/// 打开数据库连接
/// </summary>
private static void OpenCon()
{
if (Con.State == ConnectionState.Closed)
{
try
{
Con.Open();
}
catch (Exception e)
{
throw new Exception(e.Message);
}
}
}
/// <summary>
/// 关闭连接,并且释放连接和命令对象
/// </summary>
public static void CloseCon()
{
if (Con.State == ConnectionState.Open)
{
Con.Close();
Con.Dispose();
Cmd.Dispose();
}
}
/// <summary>
/// 释放OledbDataReader对象
/// </summary>
public static void CloseDataReader()
{
dr.Close();
dr.Dispose();
}
/// <summary>
/// 执行SQL语句,返回OleDbDataReader
/// </summary>
/// <param name="sql">string</param>
/// <returns>OleDbDataReader</returns>
public static OleDbDataReader GetDataReader(string sql)
{
Cmd.Connection = Con;
Cmd.CommandType = CommandType.Text;
Cmd.CommandText = sql;
try
{
OpenCon();
dr = Cmd.ExecuteReader();
return dr;
}
catch (Exception e)
{
CloseCon();
throw new Exception(e.Message);
}
}
/// <summary>
/// 执行SQL语句,返回DataSet
/// </summary>
/// <param name="sql">string</param>
/// <returns>DataSet</returns>
public static DataSet GetDataSet(string sql)
{
DataSet ds = new DataSet();
OleDbDataAdapter sda = new OleDbDataAdapter();
Cmd.Connection = Con;
Cmd.CommandType = CommandType.Text;
Cmd.CommandText = sql;
try
{
OpenCon();
sda.SelectCommand = Cmd;
sda.Fill(ds);
return ds;
}
catch(Exception e)
{
throw new Exception(e.Message);
}
finally
{
CloseCon();
sda.Dispose();
}

}

----------------------------------------------------------------------
我要疯了。 老是调试..老是数据库连接的问题。第一次可以连.
刷新一下。就报错.我要疯了。哪个大侠解答一下。

搜索更多相关主题的帖子: 数据库 
2006-12-03 22:37
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
public static OleDbDataReader GetDataReader(string sql)
{
Cmd.Connection = Con;
Cmd.CommandType = CommandType.Text;
Cmd.CommandText = sql;
try
{
OpenCon();
dr = Cmd.ExecuteReader();
return dr;
}
catch (Exception e)
{
CloseCon();
throw new Exception(e.Message);
return null;
}
finally
{
CloseCon();
CloseDataReader();
}
}

飘过~~
2006-12-03 22:44
mextb1860
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2005-7-10
收藏
得分:0 

加个CloseCon();也没有用。还是错误哦

2006-12-03 22:53
mextb1860
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2005-7-10
收藏
得分:0 
ExecuteReader 要求已打开且可用的连接。连接的当前状态为已关闭。
2006-12-03 22:56
mextb1860
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2005-7-10
收藏
得分:0 
我的是Access数据库
2006-12-03 22:58
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
public static void CloseCon()
{
if (Con.State == ConnectionState.Open)
{
Con.Close();
Con.Dispose();
Cmd.Dispose();
}
else
{
Con.Open();
}
}

再试试.

飘过~~
2006-12-03 23:02
mextb1860
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2005-7-10
收藏
得分:0 
斑竹大哥。你不能帮远程我调试一下。 我加了也没有用呢。
我觉得可能不是这个地方的问题哦
2006-12-03 23:08
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
呵呵,我怎么远程帮你弄呢??
这个也不像QQ。

[此贴子已经被作者于2006-12-3 23:20:04编辑过]


飘过~~
2006-12-03 23:11
mextb1860
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2005-7-10
收藏
得分:0 
用QQ可以不??我QQ是10112005  你加我吧.. 拜托了。我弄了一天了。头都大了。 .
2006-12-03 23:20
mextb1860
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2005-7-10
收藏
得分:0 
bygg 斑竹真是个热心的人。 谢谢你了
2006-12-04 00:20
快速回复:我要疯了。数据库连接的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020092 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved