设置CommandTimeout = 0了为什么执行存储过程还会出现超时错误?请帮忙进来看。

mutely 2004-06-28 01:58:09
我的程序代码片段如下:要执行一个数据库“存储过程”
' compute_cost是一个数据库存储过程
cmd = New SqlClient.SqlCommand("compute_cost", lyhconn)
cmd.CommandType = CommandType.StoredProcedure
'定义存储过程参数
Dim pa As New SqlClient.SqlParameter
pa.ParameterName = "@mo_no"
pa.Direction = ParameterDirection.Input
pa.DbType = DbType.String
pa.Value = row.Item("mo_no")
cmd.Parameters.Add(pa)
pa = New SqlClient.SqlParameter
pa.ParameterName = "@mo_no_list"
pa.Direction = ParameterDirection.InputOutput
pa.DbType = DbType.String
pa.Value = row.Item("mo_no")
cmd.Parameters.Add(pa)
pa = New SqlClient.SqlParameter
pa.ParameterName = "@compno_db"
pa.Direction = ParameterDirection.Input
pa.DbType = DbType.String
pa.Value = row.Item("compno")
cmd.Parameters.Add(pa)
pa = New SqlClient.SqlParameter
pa.ParameterName = "@sum_cst_out"
pa.Direction = ParameterDirection.Output
pa.DbType = DbType.Decimal
cmd.Parameters.Add(pa)
Try
cmd.CommandTimeout = 0
cmd.ExecuteNonQuery()
Catch ex As Exception
'****错误高发点注意****************
'多次出现左误提示'超时已过期'所以将cmd.CommandTimeout = 0
MsgBox("计算阶段成本!" & ex.Message & "当前制令单:" & row.Item("mo_no"), MsgBoxStyle.OKOnly, "成本计算循环体****错误高发点注意")
End Try


我的错误现象是不是每次都出现超时错误,只是有时候出现错误提示“超时时间已到,在操作完成之前超时时间已过或服务器未响应。”,不知道是什么原因,如何避免超时错误?我的存储过程应该是没有问题,因为错误不是总是发生只是偶尔。
...全文
1984 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
liyiding23 2004-06-29
  • 打赏
  • 举报
回复
ConnectionTimeout = 20
还有一个connectiontimeout
zheninchangjiang 2004-06-29
  • 打赏
  • 举报
回复
设为一个足够大的数字再试试
mutely 2004-06-29
  • 打赏
  • 举报
回复
大家帮忙呀
CMIC 2004-06-29
  • 打赏
  • 举报
回复
ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/cpref/html/frlrfsystemdatasqlclientsqlconnectionclassconnectionstringtopic.htm
CMIC 2004-06-29
  • 打赏
  • 举报
回复
在连接是设定Connect Timeout就是
Public Sub CreateSqlConnection()
Dim myConnection As New SqlConnection()
myConnection.ConnectionString = "Persist Security Info=False;Integrated Security=SSPI;database=northwind;server=mySQLServer;Connect Timeout=30"
myConnection.Open()
End Sub 'CreateSqlConnection
mutely 2004-06-29
  • 打赏
  • 举报
回复
在sqlcommand当中,没有connectiontimeout属性,在sqlconnection当中,connectiontimeout是一个只读属性。
terryxin 2004-06-28
  • 打赏
  • 举报
回复
帮你顶
测试管理与QualityCenter培训手册 1、测试流程管理、测试度量方法 按照尽早进行测试的原则,测试人员应该在需求阶段就介入,并贯穿软件开发的全过程。就测试过程本身而言,应该包含以s下几个阶段。  -测试需求的分析和确定。  -测试计划。  -测试设计。  -测试执行。  -测试记录和缺陷跟踪。  -回归测试。  -测试总结和报告。 一个好的测试管理工具应该能把以上几个阶段都管理起来。 测试人员每时每刻都在度量别人的工作成果,而测试人员的工作成果又由谁来度量呢?度量的标准和依据是什么呢?软件测试的度量是测试管理必须仔细思考的问题。缺乏尺度让测试失去平衡,缺乏标准让测试工作难以衡量。 2、如何搭建测试管理平台? 首要问题是流程的规范化。 (1) 测试进入和退出标准。 (2) 协作流程。 (3) 缺陷跟踪管理流程。 (4) 工具平台的引入。 目前主流测试管理平台与缺陷跟踪工具: 3、QC(Quality Center)介绍 QC标准测试管理流程 QC支持的应用服务器:Jboss、WebLogic、WebSphere QC支持的数据库:Oracle、SQLServer QC支持的操作系统:Windows、Linux、Solaris 支持群集: 服务器端硬件和数据库要求: Windows: Linux: Solaris: 客户端系统要求: 练习1:安装QC 详见《Mercury Quality Center 9.0 Installation Guide》 Win2003+SQLServerSp4+QC9.0安装示例 1、安装Windows Server 2003 Enterprise Edition、安装IIS邮件服务器 2、安装SQL Server 2000、打上补丁Sp4 安装好SQL Server 2000后注意启动SQLServer服务器 3、安装QC9.0 服务器名称也可以是IP地址 4、启动QC9.0 5、QC9.0安装问题解决 - JBOSS启动不了 原因:8080端口被其他应用程序占用。 用netstat查看谁占用了8080端口 netstat -ano 解决办法1:修改其他程序的端口使用 解决办法2:修改JBOSS的启动端口 JBOSS_HOME\server\default\deploy\jbossweb-tomcat55.sar\server.xml 6、修改IP地址后不能登录QC 解决办法: 在C:\Program Files\Mercury\Quality Center\jboss\server\default\deploy目录下找到10sabin.war 进入10sabin.war\WEB-INF,修改siteadmin.xml中的IP地址: 修改数据库中的数据: 修改后可以登陆 但是还需要修改以前Project的数据库连接属性 否则提示错误 然后还要修改 C:\Program Files\Mercury\Quality Center\repository\qc中的dbcon.txt: qcsiteadmin_db@192.168.1.12.1433. 还有 C:\Program Files\Mercury\Quality Center\repository\qc\Default\QualityCenter_Demo_db中的dbid.xml 192.168.1.12 7、Mercury Tours 样例程序 启动:http://192.168.1.2:8080/mtours 注意安装JVM才能“View Calendar” 4、创建和定义测试需求、测试需求管理、跟踪 定义需求 1、查看需求 视图->需求树 2、添加需求 需求->新建需求 输入以下内容 3、添加子需求项 查看需求 ZooIn : CTRL + I ZooOut : CTRL + O 视图->编号 视图->需求网格 视图->筛选/排序->设置筛选器/排序 设置排序字段 设置过滤条件 修改需求 拷贝需求项Cruise Reservation 重命名需求项Cruise Reservation_Copy_1为Hotel Reservation 移动需求项
错误类型 错误错误信息 NET_DVR_NOERROR 0 没有错误。 NET_DVR_PASSWORD_ERROR 1 用户名密码错误。注册时输入的用户名或者密码错误。 NET_DVR_NOENOUGHPRI 2 权限不足。一般和通道相关,例如有预览通道1权限,无预览通道2权限,即有预览权限但不完全,预览通道2返回此错误。 NET_DVR_NOINIT 3 SDK未初始化。 NET_DVR_CHANNEL_ERROR 4 通道号错误。设备没有对应的通道号。 NET_DVR_OVER_MAXLINK 5 设备总的连接数超过最大。 NET_DVR_VERSIONNOMATCH 6 版本不匹配。SDK和设备的版本不匹配。 NET_DVR_NETWORK_FAIL_CONNECT 7 连接设备失败。设备不在线或网络原因引起的连接超时等。 NET_DVR_NETWORK_SEND_ERROR 8 向设备发送失败。 NET_DVR_NETWORK_RECV_ERROR 9 从设备接收数据失败。 NET_DVR_NETWORK_RECV_TIMEOUT 10 从设备接收数据超时。 NET_DVR_NETWORK_ERRORDATA 11 传送的数据有误。发送给设备或者从设备接收到的数据错误,如远程参数配置时输入设备不支持的值。 NET_DVR_ORDER_ERROR 12 调用次序错误。 NET_DVR_OPERNOPERMIT 13 无此权限。用户对某个功能模块的权限,例如无预览权限用户预览返回此错误。 NET_DVR_COMMANDTIMEOUT 14 设备命令执行超时。 NET_DVR_ERRORSERIALPORT 15 串口号错误。指定的设备串口号不存在。 NET_DVR_ERRORALARMPORT 16 报警端口错误。指定的设备报警输入或者输出端口不存在。 NET_DVR_PARAMETER_ERROR 17 参数错误。SDK接口中给入的输入或输出参数为空,或者参数格式或值不符合要求。 NET_DVR_CHAN_EXCEPTION 18 设备通道处于错误状态 NET_DVR_NODISK 19 设备无硬盘。当设备无硬盘时,对设备的录像文件、硬盘配置等操作失败。 NET_DVR_ERRORDISKNUM 20 硬盘号错误。当对设备进行硬盘管理操作时,指定的硬盘号不存在时返回该错误。 NET_DVR_DISK_FULL 21 设备硬盘满。

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧