环境: VS2008
平台:wince5.0
数据库: sqlserver 2000现在做了一个在PDA通过WIFI直连远程数据库的应用
通过VS2008已经部署到了PDA上,但是连接远程数据库的时候连接不上,
错误信息是 Exception ,如何调试都捕获不到相信的错误信息。
创建一个windows应用用相同代码连接数据库是OK的
PDA上连接代码如下:string Connstr=
//"user id=sa;initial catalog=master;Server=192.168.1.105;Connect Timeout=30";
"Data Source=192.168.1.105" +
";User ID=yang.f" +
";password=123" +
";initial catalog=sop" ;SqlConnection Conn = new SqlConnection(Connstr);try
{
Conn.Open();
}catch (Exception ex)
{
MessageBox.Show("无法连接到指定的PC数据库!" + ex.Message);
return;
}请问问题出在哪里?本人刚接触C#
平台:wince5.0
数据库: sqlserver 2000现在做了一个在PDA通过WIFI直连远程数据库的应用
通过VS2008已经部署到了PDA上,但是连接远程数据库的时候连接不上,
错误信息是 Exception ,如何调试都捕获不到相信的错误信息。
创建一个windows应用用相同代码连接数据库是OK的
PDA上连接代码如下:string Connstr=
//"user id=sa;initial catalog=master;Server=192.168.1.105;Connect Timeout=30";
"Data Source=192.168.1.105" +
";User ID=yang.f" +
";password=123" +
";initial catalog=sop" ;SqlConnection Conn = new SqlConnection(Connstr);try
{
Conn.Open();
}catch (Exception ex)
{
MessageBox.Show("无法连接到指定的PC数据库!" + ex.Message);
return;
}请问问题出在哪里?本人刚接触C#
好象WINMOBILE是不能直接连接这种数据库,但是可以连接SQLCE的.
WINCE好象也是一样的吧.
【注意】我的是WINFORM程序,程序运行目录下有时候需要拷贝一个dbnetlib.dll文件,在WINCE5.0下运行连接SQL SERVER2000 和SQL SERVER2005没问题,CF2.0,连接SQL SERVER2008那个不好用啊。
private void doLink(String type)
{
SqlConnection conn = null;
try
{ this.label1.Text = "";
this.label2.Text = "";
//建立连接
String dblinkCon = "";
String sql = "";
//2000
if (type == "2000")
{
dblinkCon = "Server=192.168.30.57;DataBase=aaaaa;User ID=sa;Password=sa;";
sql = "select login_name as name from T_USER where login_id = 'admin'";
}
//2005
else if (type == "2005")
{
dblinkCon = "Server=192.168.30.56;DataBase=aaaaa;User ID=sa;Password=sa123SA;";
sql = "select login_name as name from user where login_id = 'admin'";
}
//2008
else if (type == "2008")
{
dblinkCon = "Server=192.168.16.13;DataBase=aaaa;User ID=sa;Password=aaaaa;";
sql = "select yh_nm as name from mst_yh where yh_id = 'admin'";
} this.label1.Text = dblinkCon;
this.label2.Text = sql; String name = "";
conn = new SqlConnection(dblinkCon);
conn.Close();
conn.Open(); SqlCommand cmd = new SqlCommand();
cmd.CommandText = sql;
cmd.Connection = conn;
//执行登陆SQL
SqlDataReader reader = cmd.ExecuteReader(); if (reader.Read())
{
//取得登陆用户名字
name = (String)reader["name"];
MessageBox.Show("连接成功!取得数据[" + name + "]!");
}
else {
MessageBox.Show("连接成功!未读取数据!");
}
reader.Close();
conn.Close();
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
conn.Close();
}