| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 545 人关注过本帖
标题:[求助]C#填充数据时的邪门问题....
只看楼主 加入收藏
wei0916
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2006-10-25
收藏
 问题点数:0 回复次数:7 
[求助]C#填充数据时的邪门问题....

大家好,下面是一个数据库查询过程,用定时器控制进入,可是为什么这个过程只能进入一次,第二次就死在里面出不来了呢.想不通呀.

string PubConnstr,Pathstr,Sqlstr;
Timer1.eanble= false ;关闭定时器,以免没有执行完再次进入过程
Txt_Info.Text = "进入过程";
Txt_Info.Refresh();
timer1.Enabled = false;
QueryCount = QueryCount + 1;
OdbcConnection OdbcConn = new OdbcConnection() ;
OdbcDataAdapter OdbcData = new OdbcDataAdapter();
OdbcCommand OdbcComm = new OdbcCommand();

DataSet TmpDs = new DataSet();
Pathstr = Application.StartupPath ;
PubConnstr = "provider=MSDASQL.1;user id=admin;password=;driver=microsoft visual foxpro driver;sourcedb="+Pathstr+";sourcetype=dbf;Persist Security Info=False;
OdbcConn.ConnectionString = PubConnstr;
OdbcConn.Open();
Txt_Info.Text = "打开数据库正常...";
Txt_Info.Refresh();

Sqlstr = "Select * From Piaolst where days > {^2006-10-10}";
OdbcComm.CommandText = Sqlstr;
OdbcComm.Connection = OdbcConn;
OdbcComm.ExecuteNonQuery();
Txt_Info.Text = "查询数据库正常...";
Txt_Info.Refresh();

OdbcData.SelectCommand = OdbcComm;
OdbcData.Fill(TmpDs,"Piaolst");
textBox1.Text = TmpDs.Tables[0].Rows.Count.ToString();
timer1.Enabled = true;
Txt_Info.Text = "查询次数:"+ QueryCount.ToString();
Txt_Info.Refresh();
timer1.eanble = true ;//再次打开定时器,让程序重新进入这个过程,
实际上,第二次还是进入了,但提示信息在查询数据库正常这里就死掉了,看样子是在FILL这里出错了.有没有办法呀..


[此贴子已经被作者于2006-10-25 17:31:31编辑过]

搜索更多相关主题的帖子: 数据 
2006-10-25 17:19
huangs415
Rank: 1
等 级:新手上路
帖 子:102
专家分:0
注 册:2006-10-14
收藏
得分:0 
  呵呵  没人会啊  我倒  我也不会 呵呵[URL=http://www.]http://www.[/URL]
2006-10-25 17:24
dawei322
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2006-10-25
收藏
得分:0 
学习
2006-10-25 19:22
shen2006
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2006-4-20
收藏
得分:0 

才刚学。。。看不懂。。。。


2006-10-25 20:04
RiosHx
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2006-3-7
收藏
得分:0 

楼主是否没有关掉数据库呢?
因为第一次的打开状态并没有关闭,故第二次当然不能再打开啦
所以出现了异常吧

2006-10-25 21:09
wei0916
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2006-10-25
收藏
得分:0 
人气比较旺呀.我会常来的.

不是关闭连接的问题,上面的问题要解决的话,只有在OdbcData.Fill(TmpDs,"Piaolst");之前加一个MESSAGEBOX.SHOW("12345678");,当用户点击这个对话框之后,程序就能正常运行进入,正常退出.怪事呀.怎么要加一个MESSAGEBOX呢.


2006-10-25 22:57
caiyakang
Rank: 2
等 级:新手上路
威 望:5
帖 子:2111
专家分:0
注 册:2005-3-24
收藏
得分:0 
因为使用连接后没有关吧·

中国人的财富网:http://www..cn/
2006-10-25 23:45
wei0916
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2006-10-25
收藏
得分:0 
要关吗,不是说C#有垃圾自动处理吗.上面的过程退出后,里面的ODBCCONNECTION都已经不存在了,为什么还要关呢.这是第一点,第二点,我既然能看到Txt_Info.Text = "查询数据库正常...";那么就能证明语句执行到这一个地方了,并不是OPEN这里出错了.而且整个程序也没有抛出异常,这是为什么呢.


2006-10-26 09:54
快速回复:[求助]C#填充数据时的邪门问题....
数据加载中...
 
   



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

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