2012-02-21 04:25:19 +01:00
|
|
|
|
using System;
|
|
|
|
|
using System.Data;
|
|
|
|
|
using Migrator.Framework;
|
|
|
|
|
|
|
|
|
|
namespace NzbDrone.Core.Datastore.Migrations
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
[Migration(20120220)]
|
|
|
|
|
public class Migration20120220 : NzbDroneMigration
|
|
|
|
|
{
|
|
|
|
|
protected override void MainDbUpgrade()
|
|
|
|
|
{
|
|
|
|
|
Database.AddTable("Seasons", new[]
|
|
|
|
|
{
|
|
|
|
|
new Column("SeasonId", DbType.Int32, ColumnProperty.PrimaryKeyWithIdentity),
|
|
|
|
|
new Column("SeriesId", DbType.Int32, ColumnProperty.NotNull),
|
|
|
|
|
new Column("SeasonNumber", DbType.Int32, ColumnProperty.NotNull),
|
|
|
|
|
new Column("Ignored", DbType.Boolean, ColumnProperty.NotNull)
|
|
|
|
|
});
|
2012-02-21 07:50:38 +01:00
|
|
|
|
|
|
|
|
|
Database.ExecuteNonQuery(@"INSERT INTO Seasons (SeriesId, SeasonNumber, Ignored)
|
|
|
|
|
SELECT SeriesId, SeasonNumber,
|
|
|
|
|
CASE WHEN Count(*) =
|
|
|
|
|
SUM(CASE WHEN Ignored = 1 THEN 1 ELSE 0 END) THEN 1 ELSE 0 END AS Ignored
|
|
|
|
|
FROM Episodes
|
|
|
|
|
GROUP BY SeriesId, SeasonNumber");
|
2012-02-21 04:25:19 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|