using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace HyperBooru.Migrations
{
///
public partial class UploadedFileMetadata : Migration
{
///
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.RenameColumn(
name: "OriginalChecksum",
table: "UploadedFiles",
newName: "Checksum");
migrationBuilder.AddColumn(
name: "MimeType",
table: "UploadedFiles",
type: "text",
nullable: true);
migrationBuilder.AddColumn(
name: "Height",
table: "UploadedFiles",
type: "integer",
nullable: true);
migrationBuilder.AddColumn(
name: "Width",
table: "UploadedFiles",
type: "integer",
nullable: true);
migrationBuilder.Sql(@"
UPDATE
""UploadedFiles""
SET
""MimeType"" = m.""MimeType"",
""Width"" = m.""Width"",
""Height"" = m.""Height""
FROM
(SELECT
""ObjectId"",
""MimeType"",
""Width"",
""Height""
FROM
""Media"") AS m
WHERE
""UploadedFiles"".""MediaObjectId"" = m.""ObjectId""");
migrationBuilder.Sql(@"
ALTER TABLE
""UploadedFiles""
ALTER COLUMN
""MimeType""
SET NOT NULL");
migrationBuilder.AlterColumn(
name: "MimeType",
table: "UploadedFiles",
nullable: false);
migrationBuilder.DropColumn(
name: "Checksum",
table: "Media");
migrationBuilder.DropColumn(
name: "Height",
table: "Media");
migrationBuilder.DropColumn(
name: "MimeType",
table: "Media");
migrationBuilder.DropColumn(
name: "Width",
table: "Media");
}
///
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "Checksum",
table: "UploadedFiles");
migrationBuilder.DropColumn(
name: "Height",
table: "UploadedFiles");
migrationBuilder.DropColumn(
name: "Width",
table: "UploadedFiles");
migrationBuilder.RenameColumn(
name: "MimeType",
table: "UploadedFiles",
newName: "OriginalChecksum");
migrationBuilder.AddColumn(
name: "Checksum",
table: "Media",
type: "text",
nullable: false,
defaultValue: "");
migrationBuilder.AddColumn(
name: "Height",
table: "Media",
type: "integer",
nullable: false,
defaultValue: 0);
migrationBuilder.AddColumn(
name: "MimeType",
table: "Media",
type: "text",
nullable: false,
defaultValue: "");
migrationBuilder.AddColumn(
name: "Width",
table: "Media",
type: "integer",
nullable: false,
defaultValue: 0);
}
}
}