You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Radarr/src/NzbDrone.Core/Datastore/Migration/141_fix_duplicate_alt_title...

28 lines
904 B

using System.Data;
using FluentMigrator;
using NzbDrone.Core.Datastore.Migration.Framework;
namespace NzbDrone.Core.Datastore.Migration
{
[Migration(141)]
public class fix_duplicate_alt_titles : NzbDroneMigrationBase
{
protected override void MainDbUpgrade()
{
Execute.WithConnection(RemoveDuplicateAlternateTitles);
Alter.Table("AlternativeTitles").AlterColumn("CleanTitle").AsString().Unique();
}
private void RemoveDuplicateAlternateTitles(IDbConnection conn, IDbTransaction tran)
{
using (var cmd = conn.CreateCommand())
{
cmd.Transaction = tran;
cmd.CommandText = "DELETE FROM \"AlternativeTitles\" WHERE \"Id\" NOT IN (Select Min(\"Id\") From \"AlternativeTitles\" Group By \"CleanTitle\")";
cmd.ExecuteNonQuery();
}
}
}
}