From 05ccb4d8f1bbe3fb64e117136b4a89bcfb0b0b33 Mon Sep 17 00:00:00 2001 From: crupest Date: Tue, 27 Oct 2020 19:21:35 +0800 Subject: Split front and back end. --- .../20200618064936_TimelineAddModifiedTime.cs | 57 ++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 BackEnd/Timeline/Migrations/20200618064936_TimelineAddModifiedTime.cs (limited to 'BackEnd/Timeline/Migrations/20200618064936_TimelineAddModifiedTime.cs') diff --git a/BackEnd/Timeline/Migrations/20200618064936_TimelineAddModifiedTime.cs b/BackEnd/Timeline/Migrations/20200618064936_TimelineAddModifiedTime.cs new file mode 100644 index 00000000..c277fe39 --- /dev/null +++ b/BackEnd/Timeline/Migrations/20200618064936_TimelineAddModifiedTime.cs @@ -0,0 +1,57 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +namespace Timeline.Migrations +{ + public partial class TimelineAddModifiedTime : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + var currentTime = new DateTimeToStringConverter().ConvertToProvider(DateTime.Now); + + migrationBuilder.Sql( +@$" +PRAGMA foreign_keys=OFF; + +BEGIN TRANSACTION; + +CREATE TABLE new_timelines ( + id INTEGER NOT NULL CONSTRAINT PK_timelines PRIMARY KEY AUTOINCREMENT, + unique_id TEXT NOT NULL DEFAULT (lower(hex(randomblob(16)))), + name TEXT NULL, + name_last_modified TEXT NOT NULL, + description TEXT NULL, + owner INTEGER NOT NULL, + visibility INTEGER NOT NULL, + create_time TEXT NOT NULL, + last_modified TEXT NOT NULL, + current_post_local_id INTEGER NOT NULL DEFAULT 0, + CONSTRAINT FK_timelines_users_owner FOREIGN KEY (owner) REFERENCES users (id) ON DELETE CASCADE +); + +INSERT INTO new_timelines (id, unique_id, name, name_last_modified, description, owner, visibility, create_time, last_modified, current_post_local_id) + SELECT id, unique_id, name, '{currentTime}', description, owner, visibility, create_time, '{currentTime}', current_post_local_id FROM timelines; + +DROP TABLE timelines; + +ALTER TABLE new_timelines + RENAME TO timelines; + +CREATE INDEX IX_timelines_owner ON timelines (owner); + +PRAGMA foreign_key_check; + +COMMIT TRANSACTION; + +PRAGMA foreign_keys=ON; +" + , true); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + + } + } +} -- cgit v1.2.3