mirror of
https://github.com/bitwarden/server.git
synced 2024-11-28 13:15:12 +01:00
db4d7aa609
* Tweak EF settings for grant auto-increment * Go back to zero generated default as that doesn't matter * Explicit value generation callout * Go with custom SQL for direct automatic increment * Proper column creation * Lint
144 lines
4.1 KiB
C#
144 lines
4.1 KiB
C#
using Microsoft.EntityFrameworkCore.Migrations;
|
|
|
|
#nullable disable
|
|
|
|
namespace Bit.MySqlMigrations.Migrations;
|
|
|
|
/// <inheritdoc />
|
|
public partial class GrantIdWithIndexes : Migration
|
|
{
|
|
/// <inheritdoc />
|
|
protected override void Up(MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.DropPrimaryKey(
|
|
name: "PK_Grant",
|
|
table: "Grant");
|
|
|
|
migrationBuilder.UpdateData(
|
|
table: "Grant",
|
|
keyColumn: "Type",
|
|
keyValue: null,
|
|
column: "Type",
|
|
value: "");
|
|
|
|
migrationBuilder.AlterColumn<string>(
|
|
name: "Type",
|
|
table: "Grant",
|
|
type: "varchar(50)",
|
|
maxLength: 50,
|
|
nullable: false,
|
|
oldClrType: typeof(string),
|
|
oldType: "varchar(50)",
|
|
oldMaxLength: 50,
|
|
oldNullable: true)
|
|
.Annotation("MySql:CharSet", "utf8mb4")
|
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
|
|
|
migrationBuilder.UpdateData(
|
|
table: "Grant",
|
|
keyColumn: "Data",
|
|
keyValue: null,
|
|
column: "Data",
|
|
value: "");
|
|
|
|
migrationBuilder.AlterColumn<string>(
|
|
name: "Data",
|
|
table: "Grant",
|
|
type: "longtext",
|
|
nullable: false,
|
|
oldClrType: typeof(string),
|
|
oldType: "longtext",
|
|
oldNullable: true)
|
|
.Annotation("MySql:CharSet", "utf8mb4")
|
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
|
|
|
migrationBuilder.UpdateData(
|
|
table: "Grant",
|
|
keyColumn: "ClientId",
|
|
keyValue: null,
|
|
column: "ClientId",
|
|
value: "");
|
|
|
|
migrationBuilder.AlterColumn<string>(
|
|
name: "ClientId",
|
|
table: "Grant",
|
|
type: "varchar(200)",
|
|
maxLength: 200,
|
|
nullable: false,
|
|
oldClrType: typeof(string),
|
|
oldType: "varchar(200)",
|
|
oldMaxLength: 200,
|
|
oldNullable: true)
|
|
.Annotation("MySql:CharSet", "utf8mb4")
|
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
|
|
|
migrationBuilder.Sql("ALTER TABLE `Grant` ADD COLUMN `Id` INT AUTO_INCREMENT UNIQUE;");
|
|
|
|
migrationBuilder.AddPrimaryKey(
|
|
name: "PK_Grant",
|
|
table: "Grant",
|
|
column: "Id");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Grant_Key",
|
|
table: "Grant",
|
|
column: "Key",
|
|
unique: true);
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
protected override void Down(MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.DropPrimaryKey(
|
|
name: "PK_Grant",
|
|
table: "Grant");
|
|
|
|
migrationBuilder.DropIndex(
|
|
name: "IX_Grant_Key",
|
|
table: "Grant");
|
|
|
|
migrationBuilder.DropColumn(
|
|
name: "Id",
|
|
table: "Grant");
|
|
|
|
migrationBuilder.AlterColumn<string>(
|
|
name: "Type",
|
|
table: "Grant",
|
|
type: "varchar(50)",
|
|
maxLength: 50,
|
|
nullable: true,
|
|
oldClrType: typeof(string),
|
|
oldType: "varchar(50)",
|
|
oldMaxLength: 50)
|
|
.Annotation("MySql:CharSet", "utf8mb4")
|
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
|
|
|
migrationBuilder.AlterColumn<string>(
|
|
name: "Data",
|
|
table: "Grant",
|
|
type: "longtext",
|
|
nullable: true,
|
|
oldClrType: typeof(string),
|
|
oldType: "longtext")
|
|
.Annotation("MySql:CharSet", "utf8mb4")
|
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
|
|
|
migrationBuilder.AlterColumn<string>(
|
|
name: "ClientId",
|
|
table: "Grant",
|
|
type: "varchar(200)",
|
|
maxLength: 200,
|
|
nullable: true,
|
|
oldClrType: typeof(string),
|
|
oldType: "varchar(200)",
|
|
oldMaxLength: 200)
|
|
.Annotation("MySql:CharSet", "utf8mb4")
|
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
|
|
|
migrationBuilder.AddPrimaryKey(
|
|
name: "PK_Grant",
|
|
table: "Grant",
|
|
column: "Key");
|
|
}
|
|
}
|