SQL Windows CE 设备异常

SQL Exception in Windows CE device

我正在开发 Windows CE 应用程序,我试图从设备连接到服务器数据库并在单击按钮时从数据库中获取一些信息,下面是我尝试的代码,

SqlConnection conn = new SqlConnection("Data Source=192.168.0.0;Initial Catalog=DashReport;Integrated Security=SSPI; User ID=SA;Password=Admin@123;");

SqlCommand cmd = new SqlCommand();
cmd.CommandText = "SELECT STORE, YEAR,DATE FROM TOPSALES WHERE MONTH = " + txtcode.Text + ";";
// cmd.CommandType = CommandType.Text;
cmd.Connection = conn;

conn.Open();

using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
{
    DataTable dt = new DataTable();
    sda.Fill(dt);

    if (dt.Rows.Count > 0)
    {
        gvDataGrid.DataSource = dt;
    }
    else
    {
        MessageBox.Show("No data found");
    }
}

conn.Close();

但是在 运行 申请时我得到了 SqlException。连接字符串似乎有问题。正确的方法是什么?

您不能同时拥有集成安全和指定特定的用户 ID 和密码。由于您 拥有 Integrated Security=SSPI;,这将优先,并且您的连接会尝试与当前登录的 Windows 用户连接。

很可能,来自 Windows CE 设备,您想使用特定的用户 I

string connStr = "Data Source=192.168.0.0;Initial Catalog=DashReport;User ID=SA;Password=Admin@123;"
SqlConnection conn = new SqlConnection(connStr);

另外一个长期 SQL 服务器用户、管理员和程序员的忠告:你应该 永远不要使用内置的 sa 帐户!只是不要这样做 - 使用另一个帐户(可能是您专门为此应用程序创建的帐户)。

您是否尝试过使用 Visual Studio 的服务器资源管理器,然后连接到数据库,通过属性 Window 获取连接字符串,并将其用作您的连接字符串?

只是某种保证您与数据库的连接与您的代码相同。