123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240 |
- #pragma warning disable CS1591
- #pragma warning disable SA1601
- using System;
- using Microsoft.EntityFrameworkCore.Migrations;
- namespace Jellyfin.Server.Implementations.Migrations
- {
- public partial class AddIndexesAndCollations : Migration
- {
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropForeignKey(
- name: "FK_ImageInfos_Users_UserId",
- schema: "jellyfin",
- table: "ImageInfos");
- migrationBuilder.DropForeignKey(
- name: "FK_Permissions_Users_Permission_Permissions_Guid",
- schema: "jellyfin",
- table: "Permissions");
- migrationBuilder.DropForeignKey(
- name: "FK_Preferences_Users_Preference_Preferences_Guid",
- schema: "jellyfin",
- table: "Preferences");
- migrationBuilder.DropIndex(
- name: "IX_Preferences_Preference_Preferences_Guid",
- schema: "jellyfin",
- table: "Preferences");
- migrationBuilder.DropIndex(
- name: "IX_Permissions_Permission_Permissions_Guid",
- schema: "jellyfin",
- table: "Permissions");
- migrationBuilder.DropIndex(
- name: "IX_DisplayPreferences_UserId",
- schema: "jellyfin",
- table: "DisplayPreferences");
- migrationBuilder.DropIndex(
- name: "IX_CustomItemDisplayPreferences_UserId",
- schema: "jellyfin",
- table: "CustomItemDisplayPreferences");
- migrationBuilder.AlterColumn<string>(
- name: "Username",
- schema: "jellyfin",
- table: "Users",
- type: "TEXT",
- maxLength: 255,
- nullable: false,
- collation: "NOCASE",
- oldClrType: typeof(string),
- oldType: "TEXT",
- oldMaxLength: 255);
- migrationBuilder.AddColumn<Guid>(
- name: "UserId",
- schema: "jellyfin",
- table: "Preferences",
- type: "TEXT",
- nullable: true);
- migrationBuilder.AddColumn<Guid>(
- name: "UserId",
- schema: "jellyfin",
- table: "Permissions",
- type: "TEXT",
- nullable: true);
- migrationBuilder.Sql("UPDATE Preferences SET UserId = Preference_Preferences_Guid");
- migrationBuilder.Sql("UPDATE Permissions SET UserId = Permission_Permissions_Guid");
- migrationBuilder.CreateIndex(
- name: "IX_Users_Username",
- schema: "jellyfin",
- table: "Users",
- column: "Username",
- unique: true);
- migrationBuilder.CreateIndex(
- name: "IX_Preferences_UserId_Kind",
- schema: "jellyfin",
- table: "Preferences",
- columns: new[] { "UserId", "Kind" },
- unique: true,
- filter: "[UserId] IS NOT NULL");
- migrationBuilder.CreateIndex(
- name: "IX_Permissions_UserId_Kind",
- schema: "jellyfin",
- table: "Permissions",
- columns: new[] { "UserId", "Kind" },
- unique: true,
- filter: "[UserId] IS NOT NULL");
- migrationBuilder.AddForeignKey(
- name: "FK_ImageInfos_Users_UserId",
- schema: "jellyfin",
- table: "ImageInfos",
- column: "UserId",
- principalSchema: "jellyfin",
- principalTable: "Users",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- migrationBuilder.AddForeignKey(
- name: "FK_Permissions_Users_UserId",
- schema: "jellyfin",
- table: "Permissions",
- column: "UserId",
- principalSchema: "jellyfin",
- principalTable: "Users",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- migrationBuilder.AddForeignKey(
- name: "FK_Preferences_Users_UserId",
- schema: "jellyfin",
- table: "Preferences",
- column: "UserId",
- principalSchema: "jellyfin",
- principalTable: "Users",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- }
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropForeignKey(
- name: "FK_ImageInfos_Users_UserId",
- schema: "jellyfin",
- table: "ImageInfos");
- migrationBuilder.DropForeignKey(
- name: "FK_Permissions_Users_UserId",
- schema: "jellyfin",
- table: "Permissions");
- migrationBuilder.DropForeignKey(
- name: "FK_Preferences_Users_UserId",
- schema: "jellyfin",
- table: "Preferences");
- migrationBuilder.DropIndex(
- name: "IX_Users_Username",
- schema: "jellyfin",
- table: "Users");
- migrationBuilder.DropIndex(
- name: "IX_Preferences_UserId_Kind",
- schema: "jellyfin",
- table: "Preferences");
- migrationBuilder.DropIndex(
- name: "IX_Permissions_UserId_Kind",
- schema: "jellyfin",
- table: "Permissions");
- migrationBuilder.DropColumn(
- name: "UserId",
- schema: "jellyfin",
- table: "Preferences");
- migrationBuilder.DropColumn(
- name: "UserId",
- schema: "jellyfin",
- table: "Permissions");
- migrationBuilder.AlterColumn<string>(
- name: "Username",
- schema: "jellyfin",
- table: "Users",
- type: "TEXT",
- maxLength: 255,
- nullable: false,
- oldClrType: typeof(string),
- oldType: "TEXT",
- oldMaxLength: 255,
- oldCollation: "NOCASE");
- migrationBuilder.CreateIndex(
- name: "IX_Preferences_Preference_Preferences_Guid",
- schema: "jellyfin",
- table: "Preferences",
- column: "Preference_Preferences_Guid");
- migrationBuilder.CreateIndex(
- name: "IX_Permissions_Permission_Permissions_Guid",
- schema: "jellyfin",
- table: "Permissions",
- column: "Permission_Permissions_Guid");
- migrationBuilder.CreateIndex(
- name: "IX_DisplayPreferences_UserId",
- schema: "jellyfin",
- table: "DisplayPreferences",
- column: "UserId");
- migrationBuilder.CreateIndex(
- name: "IX_CustomItemDisplayPreferences_UserId",
- schema: "jellyfin",
- table: "CustomItemDisplayPreferences",
- column: "UserId");
- migrationBuilder.AddForeignKey(
- name: "FK_ImageInfos_Users_UserId",
- schema: "jellyfin",
- table: "ImageInfos",
- column: "UserId",
- principalSchema: "jellyfin",
- principalTable: "Users",
- principalColumn: "Id",
- onDelete: ReferentialAction.Restrict);
- migrationBuilder.AddForeignKey(
- name: "FK_Permissions_Users_Permission_Permissions_Guid",
- schema: "jellyfin",
- table: "Permissions",
- column: "Permission_Permissions_Guid",
- principalSchema: "jellyfin",
- principalTable: "Users",
- principalColumn: "Id",
- onDelete: ReferentialAction.Restrict);
- migrationBuilder.AddForeignKey(
- name: "FK_Preferences_Users_Preference_Preferences_Guid",
- schema: "jellyfin",
- table: "Preferences",
- column: "Preference_Preferences_Guid",
- principalSchema: "jellyfin",
- principalTable: "Users",
- principalColumn: "Id",
- onDelete: ReferentialAction.Restrict);
- }
- }
- }
|