Foxtable(狐表)用户栏目专家坐堂 → [求助]数据链接不上计划任务停止


  共有3391人关注过本帖树形打印复制链接

主题:[求助]数据链接不上计划任务停止

帅哥哟,离线,有人找我吗?
lshshlxsh
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:655 积分:7701 威望:0 精华:0 注册:2013/12/11 17:49:00
[求助]数据链接不上计划任务停止  发帖心情 Post By:2014/4/10 14:01:00 [只看该作者]

Dim xinxj As String = "Provider=SQLOLEDB;Password=1UmeLz2Qy4KX;Persist Security Info=True;User ID=OpenMas8020005;Initial Catalog=OpenMas;Data Source=111.1.2.106,1433\SQLEXPRESS"

'''取接收表第一条内容
If Forms("处理数据").Opened = False Then
    If Connections.Contains("xinxj") = True    ''''存在XINXJ数据源
        connections.Delete("xinxj")                 ''''''''删除数据源
    End If   
    If Connections.TryConnect(xinxj) = False Then      ''''''并且数据源无法链接
        Forms("数据源无法链接").open
    Else                                               ''''''则建立数据源
       
        Connections.Add("xinxj",xinxj)
        Dim cmd As New SQLCommand
        Dim dt As DataTable
        cmd.C
        cmd.CommandText = "select top 1 * from Com_SmsIn_db8020005"
        dt = cmd.ExecuteReader()
        '''取接收表第一条内容
        If dt.DataRows.Count =1 Then
            Forms("处理数据").open
        End If
    End If
End If

 

 

 

以上是计划管理的代码

请问一下为什么数据连接不上的时候计划管理不起作用了?是不是少了什么条件没考虑进去???


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/4/10 14:03:00 [只看该作者]

没有执行  Forms("数据源无法链接").open 这句代码是吗?  那只能是条件不成立.
   

 回到顶部
帅哥哟,离线,有人找我吗?
lshshlxsh
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:655 积分:7701 威望:0 精华:0 注册:2013/12/11 17:49:00
  发帖心情 Post By:2014/4/10 14:08:00 [只看该作者]

是的,这个窗口也有能执行的时候,并不是每次都不能打开。计划管理是30S一次。错误截图如下:图片点击可在新窗口打开查看
[此贴子已经被作者于2014-4-10 14:10:58编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/4/10 14:14:00 [只看该作者]

用计时器 测试了一下如下代码,没有问题.



Dim xinxj As String = "Provider=SQLOLEDB;Password=1UmeLz2Qy4KX;Persist Security Info=True;User ID=OpenMas8020005;Initial Catalog=OpenMas;Data Source=111.1.2.106,1433\SQLEXPRESS"
If Connections.TryConnect(xinxj) = False Then
   MessageBox.show("不能连接")
Else
  MessageBox.show("能连接")
End If

你上个例子看看.

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/4/10 14:14:00 [只看该作者]

但是你用计时器执行这个,怎么样都不科学吧.  还会阻塞进程.

 回到顶部
帅哥,在线噢!
bobolan521
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:632 积分:7217 威望:0 精华:1 注册:2013/11/26 7:49:00
  发帖心情 Post By:2014/4/10 14:15:00 [只看该作者]

那这个该怎么办呢?

 回到顶部
帅哥哟,离线,有人找我吗?
lshshlxsh
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:655 积分:7701 威望:0 精华:0 注册:2013/12/11 17:49:00
  发帖心情 Post By:2014/4/10 14:20:00 [只看该作者]

例子我们已经做了,也正在使用着了,但是不知道在什么情况下会报错。报错后程序就死掉,要重新打开才能使用
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:信息机服务201404101415.rar

图片点击可在新窗口打开查看
[此贴子已经被作者于2014-4-10 14:40:09编辑过]

 回到顶部
帅哥,在线噢!
bobolan521
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:632 积分:7217 威望:0 精华:1 注册:2013/11/26 7:49:00
  发帖心情 Post By:2014/4/10 14:22:00 [只看该作者]

因为要定时去查询数据库是否有数据,如果用计划管理不科学,请问该用什么样的方式去操作

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/4/10 14:39:00 [只看该作者]

你的例子,运行到现在目前还没发现这个错误.

 回到顶部
帅哥哟,离线,有人找我吗?
有点酸
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1093 积分:6682 威望:0 精华:0 注册:2013/7/1 9:05:00
  发帖心情 Post By:2014/4/10 14:40:00 [只看该作者]

你代码不严谨而已吧,改为这样看看:

 

Dim xinxj As String = "Provider=SQLOLEDB;Password=1UmeLz2Qy4KX;Persist Security Info=True;User ID=OpenMas8020005;Initial Catalog=OpenMas;Data Source=111.1.2.106,1433\SQLEXPRESS"
If Forms("处理数据").Opened = False Then
    If Connections.Contains("xinxj") = False
        Connections.Add("xinxj",xinxj)
    End If
    If Connections.TryConnect(xinxj) = False Then      ''''
        Forms("数据源无法链接").open
    Else                                               '''
        Dim cmd As New SQLCommand
        Dim dt As DataTable
        cmd.C
        cmd.CommandText = "select top 1 * from Com_SmsIn_db8020005"
        dt = cmd.ExecuteReader()
        '''取接收表第一条内容
        If dt.DataRows.Count =1 Then
            Forms("处理数据").open
        End If
    End If
End If

 

实在不行,就:

http://www.foxtable.com/help/topics/2070.htm

 

[此贴子已经被作者于2014-4-10 14:43:19编辑过]

 回到顶部
总数 12 1 2 下一页