diff options
author | 杨宇千 <crupest@outlook.com> | 2020-02-01 00:26:35 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-01 00:26:35 +0800 |
commit | d703269e06d4c9e254fe2d5589ff04cdd6a9b366 (patch) | |
tree | f02f8d57440c777d4732bc4439f82e8b25c6732c /Timeline/Migrations/ProductionDatabase/20200131152033_RefactorUser.cs | |
parent | 631731e5c2253116a53fdc435afca184251a34fc (diff) | |
parent | bddf1d6eaac782672071df6527c40c81c3123f3a (diff) | |
download | timeline-d703269e06d4c9e254fe2d5589ff04cdd6a9b366.tar.gz timeline-d703269e06d4c9e254fe2d5589ff04cdd6a9b366.tar.bz2 timeline-d703269e06d4c9e254fe2d5589ff04cdd6a9b366.zip |
Merge pull request #56 from crupest/dev
Refactor API to be RESTful.
Diffstat (limited to 'Timeline/Migrations/ProductionDatabase/20200131152033_RefactorUser.cs')
-rw-r--r-- | Timeline/Migrations/ProductionDatabase/20200131152033_RefactorUser.cs | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/Timeline/Migrations/ProductionDatabase/20200131152033_RefactorUser.cs b/Timeline/Migrations/ProductionDatabase/20200131152033_RefactorUser.cs new file mode 100644 index 00000000..a0ca5212 --- /dev/null +++ b/Timeline/Migrations/ProductionDatabase/20200131152033_RefactorUser.cs @@ -0,0 +1,55 @@ +using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Migrations;
+
+namespace Timeline.Migrations.ProductionDatabase
+{
+ public partial class RefactorUser : Migration
+ {
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.Sql(@"
+START TRANSACTION;
+
+ALTER TABLE `users`
+ CHANGE COLUMN `name` `username` varchar (26) NOT NULL,
+ RENAME INDEX IX_users_name TO IX_users_username,
+ ADD `nickname` varchar(100) CHARACTER SET utf8mb4 NULL;
+
+UPDATE users
+ SET nickname = (
+ SELECT nickname
+ FROM user_details
+ WHERE user_details.UserId = users.id
+ );
+
+ALTER TABLE `user_avatars`
+ CHANGE COLUMN `UserId` `user` bigint (20) NOT NULL,
+ RENAME INDEX IX_user_avatars_UserId TO IX_user_avatars_user,
+ DROP FOREIGN KEY FK_user_avatars_users_UserId,
+ ADD CONSTRAINT FK_user_avatars_users_user FOREIGN KEY (`user`) REFERENCES `users` (`id`) ON DELETE CASCADE;
+
+COMMIT;
+ ");
+ }
+
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.Sql(@"
+START TRANSACTION;
+
+ALTER TABLE `users`
+ CHANGE COLUMN `username` `name` varchar (26) NOT NULL,
+ RENAME INDEX IX_users_username TO IX_users_name,
+ DROP COLUMN `nickname`;
+
+ALTER TABLE `user_avatars`
+ CHANGE COLUMN `user` `UserId` bigint (20) NOT NULL,
+ RENAME INDEX IX_user_avatars_user TO IX_user_avatars_UserId,
+ DROP FOREIGN KEY FK_user_avatars_users_user,
+ ADD CONSTRAINT FK_user_avatars_users_UserId FOREIGN KEY (`UserId`) REFERENCES `users` (`id`) ON DELETE CASCADE;
+
+COMMIT;
+ ");
+ }
+ }
+}
|