没有从非空 table 返回行
No rows returned from a non-empty table
我使用以下代码片段在 .sdf
文件
中查询本地 SQL 服务器 CE 数据库
try
{
using (SqlCeConnection sqlCe = new SqlCeConnection(ConfigurationManager.ConnectionStrings["logdbcs"].ToString()))
{
SqlCeCommand sqlCeCommand = new SqlCeCommand(@"SELECT * FROM logs", sqlCe);
sqlCe.Open();
var reader = sqlCeCommand.ExecuteReader();
Debug.WriteLine(reader.HasRows);
sqlCe.Close();
return "";
}
}
catch (Exception exception)
{
Debug.WriteLine(exception.Message);
throw;
}
数据库有 3 行,但是这个查询 returns 根本没有行。我从 ASP.NET 应用程序执行此操作,同时从本地计算机进行调试。
试试这个代码。
Datatable dt = new Datatable();
try
{
using (SqlCeConnection sqlCeConn = new SqlCeConnection(ConfigurationManager.ConnectionStrings["logdbcs"].ToString()))
{
SqlCeCommand sqlCeCommand = new SqlCeCommand(@"SELECT * FROM logs", sqlCeConn);
sqlCeConn.Open();
sqlCeDataAdapter losqlCeDataAdapter = new sqlCeDataAdapter(sqlCeCommand);
losqlCeDataAdapter.Fill(dt);
return dt;
}
}
catch (Exception exception)
{
Debug.WriteLine(exception.Message);
throw;
}
您很可能在连接字符串中使用了 DataDirectory(您向我们隐藏了它),因此请在 bin/debug 文件夹中查找您的数据库文件的副本。
我使用以下代码片段在 .sdf
文件
try
{
using (SqlCeConnection sqlCe = new SqlCeConnection(ConfigurationManager.ConnectionStrings["logdbcs"].ToString()))
{
SqlCeCommand sqlCeCommand = new SqlCeCommand(@"SELECT * FROM logs", sqlCe);
sqlCe.Open();
var reader = sqlCeCommand.ExecuteReader();
Debug.WriteLine(reader.HasRows);
sqlCe.Close();
return "";
}
}
catch (Exception exception)
{
Debug.WriteLine(exception.Message);
throw;
}
数据库有 3 行,但是这个查询 returns 根本没有行。我从 ASP.NET 应用程序执行此操作,同时从本地计算机进行调试。
试试这个代码。
Datatable dt = new Datatable();
try
{
using (SqlCeConnection sqlCeConn = new SqlCeConnection(ConfigurationManager.ConnectionStrings["logdbcs"].ToString()))
{
SqlCeCommand sqlCeCommand = new SqlCeCommand(@"SELECT * FROM logs", sqlCeConn);
sqlCeConn.Open();
sqlCeDataAdapter losqlCeDataAdapter = new sqlCeDataAdapter(sqlCeCommand);
losqlCeDataAdapter.Fill(dt);
return dt;
}
}
catch (Exception exception)
{
Debug.WriteLine(exception.Message);
throw;
}
您很可能在连接字符串中使用了 DataDirectory(您向我们隐藏了它),因此请在 bin/debug 文件夹中查找您的数据库文件的副本。