default varchar to null

This commit is contained in:
Collin Barrett 2018-02-02 06:08:26 -06:00
parent cbbca01b7d
commit f04ae2e1c5
6 changed files with 671 additions and 20 deletions

View file

@ -0,0 +1,458 @@
// <auto-generated />
using FilterLists.Data;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage;
using Microsoft.EntityFrameworkCore.Storage.Internal;
using System;
namespace FilterLists.Api.Migrations
{
[DbContext(typeof(FilterListsDbContext))]
[Migration("20180202120230_AddVarcharDefaultNull")]
partial class AddVarcharDefaultNull
{
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn)
.HasAnnotation("ProductVersion", "2.0.1-rtm-125");
modelBuilder.Entity("FilterLists.Data.Entities.FilterList", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("SMALLINT UNSIGNED");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.Property<string>("Description")
.HasColumnType("TEXT");
b.Property<string>("DescriptionSourceUrl")
.HasColumnType("TEXT");
b.Property<DateTime?>("DiscontinuedDate");
b.Property<string>("DonateUrl")
.HasColumnType("TEXT");
b.Property<string>("EmailAddress")
.HasColumnType("VARCHAR(126) DEFAULT NULL");
b.Property<string>("ForumUrl")
.HasColumnType("TEXT");
b.Property<string>("HomeUrl")
.HasColumnType("TEXT");
b.Property<string>("IssuesUrl")
.HasColumnType("TEXT");
b.Property<int?>("LicenseId");
b.Property<DateTime>("ModifiedDateUtc")
.ValueGeneratedOnAddOrUpdate()
.HasColumnType("TIMESTAMP");
b.Property<string>("Name")
.HasColumnType("VARCHAR(126) NOT NULL");
b.Property<string>("PolicyUrl")
.HasColumnType("TEXT");
b.Property<DateTime?>("ScrapedDateUtc");
b.Property<string>("SubmissionUrl")
.HasColumnType("TEXT");
b.Property<int?>("SyntaxId");
b.Property<DateTime?>("UpdatedDateUtc");
b.Property<string>("ViewUrl")
.HasColumnType("TEXT NOT NULL");
b.HasKey("Id");
b.HasIndex("LicenseId");
b.HasIndex("SyntaxId");
b.ToTable("filterlists");
});
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListLanguage", b =>
{
b.Property<int>("FilterListId");
b.Property<int>("LanguageId");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.HasKey("FilterListId", "LanguageId");
b.HasIndex("LanguageId");
b.ToTable("filterlists_languages");
});
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListMaintainer", b =>
{
b.Property<int>("FilterListId");
b.Property<int>("MaintainerId");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.HasKey("FilterListId", "MaintainerId");
b.HasIndex("MaintainerId");
b.ToTable("filterlists_maintainers");
});
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListRule", b =>
{
b.Property<int>("FilterListId");
b.Property<int>("RuleId");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.HasKey("FilterListId", "RuleId");
b.HasIndex("RuleId");
b.ToTable("filterlists_rules");
});
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.Fork", b =>
{
b.Property<int>("ForkFilterListId");
b.Property<int>("UpstreamFilterListId");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.HasKey("ForkFilterListId", "UpstreamFilterListId");
b.HasIndex("UpstreamFilterListId");
b.ToTable("forks");
});
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.Merge", b =>
{
b.Property<int>("MergeFilterListId");
b.Property<int>("UpstreamFilterListId");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.HasKey("MergeFilterListId", "UpstreamFilterListId");
b.HasIndex("UpstreamFilterListId");
b.ToTable("merges");
});
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.SoftwareSyntax", b =>
{
b.Property<int>("SoftwareId");
b.Property<int>("SyntaxId");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.HasKey("SoftwareId", "SyntaxId");
b.HasIndex("SyntaxId");
b.ToTable("software_syntaxes");
});
modelBuilder.Entity("FilterLists.Data.Entities.Language", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("SMALLINT UNSIGNED");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.Property<string>("Iso6391")
.HasColumnType("VARCHAR(2) DEFAULT NULL");
b.Property<string>("Iso6392")
.HasColumnType("VARCHAR(3) DEFAULT NULL");
b.Property<string>("Iso6392B")
.HasColumnType("VARCHAR(3) DEFAULT NULL");
b.Property<string>("Iso6392T")
.HasColumnType("VARCHAR(3) DEFAULT NULL");
b.Property<string>("Iso6393")
.HasColumnType("VARCHAR(3) DEFAULT NULL");
b.Property<string>("LocalName")
.HasColumnType("VARCHAR(126) DEFAULT NULL");
b.Property<DateTime>("ModifiedDateUtc")
.ValueGeneratedOnAddOrUpdate()
.HasColumnType("TIMESTAMP");
b.Property<string>("Name")
.HasColumnType("VARCHAR(126) DEFAULT NULL");
b.HasKey("Id");
b.ToTable("languages");
});
modelBuilder.Entity("FilterLists.Data.Entities.License", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("SMALLINT UNSIGNED");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.Property<string>("DescriptionUrl")
.HasColumnType("TEXT");
b.Property<DateTime>("ModifiedDateUtc")
.ValueGeneratedOnAddOrUpdate()
.HasColumnType("TIMESTAMP");
b.Property<string>("Name")
.HasColumnType("VARCHAR(126) NOT NULL");
b.Property<bool>("PermissiveAdaptation");
b.Property<bool>("PermissiveCommercial");
b.HasKey("Id");
b.ToTable("licenses");
});
modelBuilder.Entity("FilterLists.Data.Entities.Maintainer", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("SMALLINT UNSIGNED");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.Property<string>("EmailAddress")
.HasColumnType("VARCHAR(126) DEFAULT NULL");
b.Property<string>("HomeUrl")
.HasColumnType("TEXT");
b.Property<DateTime>("ModifiedDateUtc")
.ValueGeneratedOnAddOrUpdate()
.HasColumnType("TIMESTAMP");
b.Property<string>("Name")
.HasColumnType("VARCHAR(126) NOT NULL");
b.Property<string>("TwitterHandle")
.HasColumnType("VARCHAR(126) DEFAULT NULL");
b.HasKey("Id");
b.ToTable("maintainers");
});
modelBuilder.Entity("FilterLists.Data.Entities.Rule", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("BIGINT UNSIGNED");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.Property<DateTime>("ModifiedDateUtc")
.ValueGeneratedOnAddOrUpdate()
.HasColumnType("TIMESTAMP");
b.Property<string>("Raw")
.HasColumnType("VARCHAR(16384) NOT NULL COLLATE 'utf8_unicode_ci'");
b.HasKey("Id");
b.ToTable("rules");
});
modelBuilder.Entity("FilterLists.Data.Entities.Software", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("SMALLINT UNSIGNED");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.Property<string>("DownloadUrl")
.HasColumnType("TEXT");
b.Property<string>("HomeUrl")
.HasColumnType("TEXT");
b.Property<DateTime>("ModifiedDateUtc")
.ValueGeneratedOnAddOrUpdate()
.HasColumnType("TIMESTAMP");
b.Property<string>("Name")
.HasColumnType("VARCHAR(126) NOT NULL");
b.HasKey("Id");
b.ToTable("software");
});
modelBuilder.Entity("FilterLists.Data.Entities.Syntax", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("SMALLINT UNSIGNED");
b.Property<DateTime>("CreatedDateUtc")
.ValueGeneratedOnAdd()
.HasColumnType("TIMESTAMP");
b.Property<string>("DefinitionUrl")
.HasColumnType("TEXT");
b.Property<DateTime>("ModifiedDateUtc")
.ValueGeneratedOnAddOrUpdate()
.HasColumnType("TIMESTAMP");
b.Property<string>("Name")
.HasColumnType("VARCHAR(126) NOT NULL");
b.HasKey("Id");
b.ToTable("syntaxes");
});
modelBuilder.Entity("FilterLists.Data.Entities.FilterList", b =>
{
b.HasOne("FilterLists.Data.Entities.License")
.WithMany("FilterLists")
.HasForeignKey("LicenseId");
b.HasOne("FilterLists.Data.Entities.Syntax")
.WithMany("FilterLists")
.HasForeignKey("SyntaxId");
});
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListLanguage", b =>
{
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
.WithMany("FilterListLanguages")
.HasForeignKey("FilterListId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("FilterLists.Data.Entities.Language", "Language")
.WithMany("FilterListLanguages")
.HasForeignKey("LanguageId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListMaintainer", b =>
{
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
.WithMany("FilterListMaintainers")
.HasForeignKey("FilterListId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("FilterLists.Data.Entities.Maintainer", "Maintainer")
.WithMany("FilterListMaintainers")
.HasForeignKey("MaintainerId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListRule", b =>
{
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
.WithMany("FilterListRules")
.HasForeignKey("FilterListId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("FilterLists.Data.Entities.Rule", "Rule")
.WithMany("FilterListRules")
.HasForeignKey("RuleId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.Fork", b =>
{
b.HasOne("FilterLists.Data.Entities.FilterList", "ForkFilterList")
.WithMany()
.HasForeignKey("ForkFilterListId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("FilterLists.Data.Entities.FilterList", "UpstreamFilterList")
.WithMany()
.HasForeignKey("UpstreamFilterListId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.Merge", b =>
{
b.HasOne("FilterLists.Data.Entities.FilterList", "MergeFilterList")
.WithMany()
.HasForeignKey("MergeFilterListId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("FilterLists.Data.Entities.FilterList", "UpstreamFilterList")
.WithMany()
.HasForeignKey("UpstreamFilterListId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.SoftwareSyntax", b =>
{
b.HasOne("FilterLists.Data.Entities.Software", "Software")
.WithMany("SoftwareSyntaxes")
.HasForeignKey("SoftwareId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("FilterLists.Data.Entities.Syntax", "Syntax")
.WithMany("SoftwareSyntaxes")
.HasForeignKey("SyntaxId")
.OnDelete(DeleteBehavior.Cascade);
});
#pragma warning restore 612, 618
}
}
}

View file

@ -0,0 +1,193 @@
using Microsoft.EntityFrameworkCore.Migrations;
namespace FilterLists.Api.Migrations
{
public partial class AddVarcharDefaultNull : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AlterColumn<string>(
"TwitterHandle",
"maintainers",
"VARCHAR(126) DEFAULT NULL",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(126)",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"EmailAddress",
"maintainers",
"VARCHAR(126) DEFAULT NULL",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(126)",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"Name",
"languages",
"VARCHAR(126) DEFAULT NULL",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(126)",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"LocalName",
"languages",
"VARCHAR(126) DEFAULT NULL",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(126)",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"Iso6393",
"languages",
"VARCHAR(3) DEFAULT NULL",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(3)",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"Iso6392T",
"languages",
"VARCHAR(3) DEFAULT NULL",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(3)",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"Iso6392B",
"languages",
"VARCHAR(3) DEFAULT NULL",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(3)",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"Iso6392",
"languages",
"VARCHAR(3) DEFAULT NULL",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(3)",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"Iso6391",
"languages",
"VARCHAR(2) DEFAULT NULL",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(2)",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"EmailAddress",
"filterlists",
"VARCHAR(126) DEFAULT NULL",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(126)",
oldNullable: true);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.AlterColumn<string>(
"TwitterHandle",
"maintainers",
"VARCHAR(126)",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(126) DEFAULT NULL",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"EmailAddress",
"maintainers",
"VARCHAR(126)",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(126) DEFAULT NULL",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"Name",
"languages",
"VARCHAR(126)",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(126) DEFAULT NULL",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"LocalName",
"languages",
"VARCHAR(126)",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(126) DEFAULT NULL",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"Iso6393",
"languages",
"VARCHAR(3)",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(3) DEFAULT NULL",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"Iso6392T",
"languages",
"VARCHAR(3)",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(3) DEFAULT NULL",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"Iso6392B",
"languages",
"VARCHAR(3)",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(3) DEFAULT NULL",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"Iso6392",
"languages",
"VARCHAR(3)",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(3) DEFAULT NULL",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"Iso6391",
"languages",
"VARCHAR(2)",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(2) DEFAULT NULL",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
"EmailAddress",
"filterlists",
"VARCHAR(126)",
nullable: true,
oldClrType: typeof(string),
oldType: "VARCHAR(126) DEFAULT NULL",
oldNullable: true);
}
}
}

View file

@ -40,7 +40,7 @@ protected override void BuildModel(ModelBuilder modelBuilder)
.HasColumnType("TEXT");
b.Property<string>("EmailAddress")
.HasColumnType("VARCHAR(126)");
.HasColumnType("VARCHAR(126) DEFAULT NULL");
b.Property<string>("ForumUrl")
.HasColumnType("TEXT");
@ -197,29 +197,29 @@ protected override void BuildModel(ModelBuilder modelBuilder)
.HasColumnType("TIMESTAMP");
b.Property<string>("Iso6391")
.HasColumnType("VARCHAR(2)");
.HasColumnType("VARCHAR(2) DEFAULT NULL");
b.Property<string>("Iso6392")
.HasColumnType("VARCHAR(3)");
.HasColumnType("VARCHAR(3) DEFAULT NULL");
b.Property<string>("Iso6392B")
.HasColumnType("VARCHAR(3)");
.HasColumnType("VARCHAR(3) DEFAULT NULL");
b.Property<string>("Iso6392T")
.HasColumnType("VARCHAR(3)");
.HasColumnType("VARCHAR(3) DEFAULT NULL");
b.Property<string>("Iso6393")
.HasColumnType("VARCHAR(3)");
.HasColumnType("VARCHAR(3) DEFAULT NULL");
b.Property<string>("LocalName")
.HasColumnType("VARCHAR(126)");
.HasColumnType("VARCHAR(126) DEFAULT NULL");
b.Property<DateTime>("ModifiedDateUtc")
.ValueGeneratedOnAddOrUpdate()
.HasColumnType("TIMESTAMP");
b.Property<string>("Name")
.HasColumnType("VARCHAR(126)");
.HasColumnType("VARCHAR(126) DEFAULT NULL");
b.HasKey("Id");
@ -266,7 +266,7 @@ protected override void BuildModel(ModelBuilder modelBuilder)
.HasColumnType("TIMESTAMP");
b.Property<string>("EmailAddress")
.HasColumnType("VARCHAR(126)");
.HasColumnType("VARCHAR(126) DEFAULT NULL");
b.Property<string>("HomeUrl")
.HasColumnType("TEXT");
@ -279,7 +279,7 @@ protected override void BuildModel(ModelBuilder modelBuilder)
.HasColumnType("VARCHAR(126) NOT NULL");
b.Property<string>("TwitterHandle")
.HasColumnType("VARCHAR(126)");
.HasColumnType("VARCHAR(126) DEFAULT NULL");
b.HasKey("Id");

View file

@ -19,7 +19,7 @@ public override void Configure(EntityTypeBuilder<FilterList> entityTypeBuilder)
entityTypeBuilder.Property(x => x.DonateUrl)
.HasColumnType("TEXT");
entityTypeBuilder.Property(x => x.EmailAddress)
.HasColumnType("VARCHAR(126)");
.HasColumnType("VARCHAR(126) DEFAULT NULL");
entityTypeBuilder.Property(x => x.ForumUrl)
.HasColumnType("TEXT");
entityTypeBuilder.Property(x => x.HomeUrl)

View file

@ -13,19 +13,19 @@ public override void Configure(EntityTypeBuilder<Language> entityTypeBuilder)
entityTypeBuilder.ToTable("languages");
entityTypeBuilder.Property(x => x.Iso6391)
.HasColumnType("VARCHAR(2)");
.HasColumnType("VARCHAR(2) DEFAULT NULL");
entityTypeBuilder.Property(x => x.Iso6392)
.HasColumnType("VARCHAR(3)");
.HasColumnType("VARCHAR(3) DEFAULT NULL");
entityTypeBuilder.Property(x => x.Iso6392B)
.HasColumnType("VARCHAR(3)");
.HasColumnType("VARCHAR(3) DEFAULT NULL");
entityTypeBuilder.Property(x => x.Iso6392T)
.HasColumnType("VARCHAR(3)");
.HasColumnType("VARCHAR(3) DEFAULT NULL");
entityTypeBuilder.Property(x => x.Iso6393)
.HasColumnType("VARCHAR(3)");
.HasColumnType("VARCHAR(3) DEFAULT NULL");
entityTypeBuilder.Property(x => x.LocalName)
.HasColumnType("VARCHAR(126)");
.HasColumnType("VARCHAR(126) DEFAULT NULL");
entityTypeBuilder.Property(x => x.Name)
.HasColumnType("VARCHAR(126)");
.HasColumnType("VARCHAR(126) DEFAULT NULL");
}
}
}

View file

@ -13,13 +13,13 @@ public override void Configure(EntityTypeBuilder<Maintainer> entityTypeBuilder)
entityTypeBuilder.ToTable("maintainers");
entityTypeBuilder.Property(x => x.EmailAddress)
.HasColumnType("VARCHAR(126)");
.HasColumnType("VARCHAR(126) DEFAULT NULL");
entityTypeBuilder.Property(x => x.HomeUrl)
.HasColumnType("TEXT");
entityTypeBuilder.Property(x => x.Name)
.HasColumnType("VARCHAR(126) NOT NULL");
entityTypeBuilder.Property(x => x.TwitterHandle)
.HasColumnType("VARCHAR(126)");
.HasColumnType("VARCHAR(126) DEFAULT NULL");
}
}
}