mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
[RombaSharp] Implement DisplayDBStats
This commit is contained in:
@@ -227,20 +227,52 @@ namespace SabreTools
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Display the statistics in the database
|
/// Display the statistics in the database
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <remarks>
|
|
||||||
/// This list of stats should include:
|
|
||||||
/// - Total uncompressed size of the files
|
|
||||||
/// - Total number of files
|
|
||||||
/// - Total number of files that exist
|
|
||||||
/// - Total number of files that don't exist
|
|
||||||
/// - Total number of files with CRC
|
|
||||||
/// - Total number of files with MD5
|
|
||||||
/// - Total number of files with SHA-1
|
|
||||||
/// - Total number of unique DAT hashes
|
|
||||||
/// </remarks>
|
|
||||||
private static void DisplayDBStats()
|
private static void DisplayDBStats()
|
||||||
{
|
{
|
||||||
_logger.User("This feature is not yet implemented: dbstats");
|
SqliteConnection dbc = new SqliteConnection(_connectionString);
|
||||||
|
|
||||||
|
// Total uncompressed size
|
||||||
|
string query = "SELECT SUM(size) FROM data";
|
||||||
|
SqliteCommand slc = new SqliteCommand(query, dbc);
|
||||||
|
_logger.User("Uncompressed size: " + Style.GetBytesReadable((long)slc.ExecuteScalar()));
|
||||||
|
|
||||||
|
// Total number of files
|
||||||
|
query = "SELECT COUNT(*) FROM data";
|
||||||
|
slc = new SqliteCommand(query, dbc);
|
||||||
|
_logger.User("Total files: " + (long)slc.ExecuteScalar());
|
||||||
|
|
||||||
|
// Total number of files that exist
|
||||||
|
query = "SELECT COUNT(*) FROM data WHERE exists=1";
|
||||||
|
slc = new SqliteCommand(query, dbc);
|
||||||
|
_logger.User("Total files in depots: " + (long)slc.ExecuteScalar());
|
||||||
|
|
||||||
|
// Total number of files that are missing
|
||||||
|
query = "SELECT COUNT(*) FROM data WHERE exists=0";
|
||||||
|
slc = new SqliteCommand(query, dbc);
|
||||||
|
_logger.User("Total files missing: " + (long)slc.ExecuteScalar());
|
||||||
|
|
||||||
|
// Total number of CRCs
|
||||||
|
query = "SELECT COUNT(crc) FROM data WHERE NOT crc=\"null\"";
|
||||||
|
slc = new SqliteCommand(query, dbc);
|
||||||
|
_logger.User("Total CRCs: " + (long)slc.ExecuteScalar());
|
||||||
|
|
||||||
|
// Total number of MD5s
|
||||||
|
query = "SELECT COUNT(md5) FROM data WHERE NOT md5=\"null\"";
|
||||||
|
slc = new SqliteCommand(query, dbc);
|
||||||
|
_logger.User("Total MD5s: " + (long)slc.ExecuteScalar());
|
||||||
|
|
||||||
|
// Total number of SHA1s
|
||||||
|
query = "SELECT COUNT(sha1) FROM data WHERE NOT sha1=\"null\"";
|
||||||
|
slc = new SqliteCommand(query, dbc);
|
||||||
|
_logger.User("Total SHA1s: " + (long)slc.ExecuteScalar());
|
||||||
|
|
||||||
|
// Total number of DATs
|
||||||
|
query = "SELECT COUNT(*) FROM dats";
|
||||||
|
slc = new SqliteCommand(query, dbc);
|
||||||
|
_logger.User("Total DATs: " + (long)slc.ExecuteScalar());
|
||||||
|
|
||||||
|
slc.Dispose();
|
||||||
|
dbc.Dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
Reference in New Issue
Block a user