我已经将大量信息从我的程序插入到SQlite数据库中。现在,我的小任务是查找数据库并从中找到一些统计数据。我有一个包含三个字段的数据库 - 时间戳,消息和密钥 现在,我想检查消息列中的数据库并计算某个关键字(如“ERROR”)发生在数据库。SQLite C#简单数据库查询
要做到这一点,最简单的方法是什么? 从数据库中选择消息,如何添加过滤器?
我使用正则表达式来筛选插入前的一些东西。我应该在这里做类似的事吗?
感谢
编辑:
我用下面的SELECT COUNT(*)中提到的解决方案,但我仍然不知道如何获取值出在另一个函数中使用它。我已经展示了我在下面使用的代码。我是SQL新手,可能是错误的。请帮忙!
public void selectFromDatabase()
{
String cntnStr_query = "data source=C:\\TMU_Files\\test31.s3db";
SQLiteConnection connection_query = new SQLiteConnection(cntnStr_query);
connection_query.Open();
SQLiteCommand cmd_query = connection_query.CreateCommand();
cmd_query.CommandText = "SELECT count(*) from LogDatabase where LogMessage like '%ERR%'";
SQLiteDataAdapter da_query = new SQLiteDataAdapter(cmd_query);
DataSet ds_query = new DataSet();
//MessageBox.Show(cmd_query.ExecuteNonQuery().ToString());
//MessageBox.Show(count.ToString());
try
{
da_query.Fill(ds_query);
DataTable dt_query = ds_query.Tables[0];
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
finally
{
cmd_query.Dispose();
connection_query.Close();
}
//cmd_query.Dispose();
//connection_query.Close();
}
}
}
只是为了清晰 - 时间错误的号码出现或它出现的行数? – 2011-06-09 18:41:17
它出现的行数。 – techmanc 2011-06-09 18:50:17
upvoting blindy then。 – 2011-06-09 18:51:04