掌上电脑早上不能连接到SQL

时间:2015-11-10 16:40:07

标签: c# sql-server

因此,我们在Windows Mobile 5的Socket Mobile Pocket PC(SoMo650)上运行了一个用C#编写的内部程序。在过去几周内,该设备在连接到我们的SQL服务器数据库时非常不稳定。大多数早晨它工作正常,但大约上午10点(给予或采取半小时)它只是完全停止连接;只在最后的卫星上工作。该程序24/7在其他设备上正常工作,只有PPC有问题。第二天早上它再次开始工作,直到上午10点。这是我收到的错误消息(我手动输入,很抱歉打字错误):

ProgramZ.exe
SqlException

at System.Data.SqlClient.SqlConnection.OnError()
at System.Data.SqlClient.SqlInternalConnection.OnError()
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
at System.Data.SqlClient.Tdsparser.Connect()
at System.Data.SqlClient.SqlInternalConnection.OpenAndLogin()
at System.Data.SqlClient.SqlInternalConnection..ctor()
at System.Data.SqlClient.SqlConnection.Open()
at System.Data.Common.DbDataAdapter.QuietOpen()
at System.Data.Common.DbDataAdapter.FillInternal()
at System.Data.Common.DbDataAdapter.Fill()
at System.Data.Common.DbDataAdapter.Fill()
at ProgramZ.ProgramZTableAdapters.qryWarehousesTableAdapter.GetWarehouse()
at ProgramZ.frmCollection.frmCollection_Load()
at System.Windows.Forms.Form.OnLoad()
at System.Windows.Forms.Form._SetVisibleNotify()
at System.Windows.Forms.Form.set_Visible()
at System.Windows.Forms.Application.Run()
at ProgramZ.Program.Main()

任何想法是怎么回事?软件包sql.ppc.wce5.armv4i安装在设备上(需要该软件包才能连接到SQL)。我们尝试重新启动服务器,重新安装软件,在PPC上恢复出厂设置,但仍然没有运气。以下是设备本身的更多信息:

Manufacture: Socket Mobile, Inc
Product ID: SoMo650
CPU: ARM920T PXA270

Windows Mobile 5.0 with the Messaging and Security Feature Pack
OS 5.1.478 (Build 15706.3.5.2)

编辑一些请求的信息:调试时,错误消息是" SqlException未处理"。就是这样。当我点击详细信息时,我会收到以下信息:

[System.Data.SqlCLient.SqlException]  {"SqlException"}
Class                                 20
Errors                                {System.Data.SqlClient.SqlErrorCollection}
InnerException                        null
LineNumber                            0
Message                               "SqlException"
Number                                6
Procedure                             "ConnectionOpen(Connect())."
Server                                "ServerName"
Source                                ".Net SqlClient Data Provider"
StackTrace                            "at System.Data.SqlClient.SqlConnection.OnError()"...
State                                 0

程序设置为典型的ADO连接。连接字符串是这样的:

Data Source=ServerName;Initial Catalog=ProgramZDatabase;Persist Security Info=True;User ID=user_write;Password=password

这是在抛出错误时程序代码中发生的事情(这是来自Visual Studio创建的数据集):

[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, true)]
public virtual ProgramZ.qryWarehousesDataTable GetWarehouse() {
    this.Adapter.SelectCommand = this.CommandCollection[0];
    ProgramZ.qryWarehousesDataTable dataTable = new ProgramZ.qryWarehousesDataTable();
    this.Adapter.Fill(dataTable); // <-- this is where the error is thrown
    return dataTable;
}

设备通过WiFi连接到我们的SqlServer 2000.服务器上还运行了大约5个数据库,其中大约3个正在定期使用(如每天多次)。其中一个为ERP系统提供动力,在任何给定时间都有10个人使用。服务器的流量相当大,但似乎处理得很好(在任务管理器中没有发现任何问题)。 Pocket PC是唯一使用&#34; ProgramZDatabase&#34;的设备。我不知道在这些错误期间发生的任何备份或报告。

我认为连接超时可能值得研究。我从没搞过编辑超时;有什么建议吗?

0 个答案:

没有答案