c#
  • sql-server
  • windows-ce
  • sqlconnection
  • 2012-01-27 116 views 1 likes 
    1

    我正在开发一个在Windows Ce 6.0上运行的应用程序,应用程序应连接到位于我的PC上的数据库,但每次尝试打开连接时,都会收到SQLException错误消息。这是我如何打开连接SqlException错误消息

    .......... 
    SqlConnection EdiSqlConnection; 
    String ConnectionString; 
    ConnectionString = "Server='serverName';Database=DatabaseName;Trusted_Connection=true;"; 
    .......... 
    
    EdiSqlConnection = new SqlConnection(ConnectionString); 
    
    try { 
        EdiSqlConnection.Open(); 
        Output.Text = "Connected"; //this is a message to see that we are connected 
    } 
    catch (Exception ex) { 
        Output.Text = "Message: " + ex.Message; 
        return; 
    } 
    

    为什么我会收到错误消息?我如何解决它?

    谢谢。

    +2

    要启动,删除try catch并检查由异常提供的整个堆栈跟踪。这将有助于确定问题所在。如果您需要更多帮助,请编辑您的帖子以包含整个堆栈跟踪。 – 2012-01-27 15:55:14

    +0

    “catch”块中“ex.Message”的值是什么? – 2012-01-27 15:59:32

    +0

    我得到的唯一输出是:消息:SqlException – Chucri 2012-01-27 16:14:17

    回答

    1

    删除引号这里没有足够的信息,所以你需要提供更多。

    1. 正在抛出什么类型的异常?你确定它是一个SqlException?你正在捕捉所有的例外。

    2. catch块中的ex.Message的值是多少?

    3. 你连接了哪个数据库? SQL Server(版本?)或SQL Compact?

    假设您的应用程序和数据库在不同的机器上运行,您可能会遇到可信连接问题。您的WinCE设备不太可能位于域中,或者无法验证用户身份,因此身份验证可能会失败。尝试使用SSPI身份验证。请参阅this page上的“来自CE设备的可信连接”。请注意,您不必提供域用户标识,只需在数据库服务器计算机上有效且具有数据库访问权限的用户标识和密码即可。

    +0

    显然我的代码是正确的,问题是在连接,我的电脑运行的是Windows 7,我猜Windows 7的安全性非常高,它不允许windows ce单元访问它,所以我必须弄清楚现在就解决这个问题。 – Chucri 2012-01-28 01:28:47

    +1

    请尝试关闭您的Windows防火墙。如果有帮助,然后再打开它并添加端口1433的规则。另外检查SQL Server是否正在侦听tcpip端口。它默认发送。我仍然认为你会遇到可信连接的问题,你可能不得不使用sql server身份验证。 – 2012-01-28 13:10:27

    0

    'serverName'

    +0

    不!不工作! – Chucri 2012-01-27 16:00:02

    +0

    最新错误? – Diego 2012-01-27 16:02:12

    +0

    我仍然得到相同的错误! SqlException ....我想我应该提到,我试图连接到我的电脑无线... – Chucri 2012-01-27 16:10:21

    相关问题