mirror of
https://github.com/aaronpo97/the-biergarten-app.git
synced 2026-10-14 17:54:42 +00:00
40 lines
1.0 KiB
SQL
40 lines
1.0 KiB
SQL
CREATE TABLE Social.UserFollow
|
|
(
|
|
UserFollowID UNIQUEIDENTIFIER
|
|
CONSTRAINT DF_UserFollowID DEFAULT NEWID(),
|
|
|
|
UserAccountID UNIQUEIDENTIFIER NOT NULL,
|
|
|
|
FollowingID UNIQUEIDENTIFIER NOT NULL,
|
|
|
|
CreatedAt DATETIME NOT NULL
|
|
CONSTRAINT DF_UserFollow_CreatedAt DEFAULT GETDATE(),
|
|
|
|
RowVersion ROWVERSION,
|
|
|
|
CONSTRAINT PK_UserFollow
|
|
PRIMARY KEY (UserFollowID),
|
|
|
|
CONSTRAINT FK_UserFollow_UserAccount
|
|
FOREIGN KEY (UserAccountID)
|
|
REFERENCES Auth.UserAccount (UserAccountID)
|
|
ON DELETE NO ACTION,
|
|
|
|
CONSTRAINT FK_UserFollow_UserAccountFollowing
|
|
FOREIGN KEY (FollowingID)
|
|
REFERENCES Auth.UserAccount (UserAccountID)
|
|
ON DELETE NO ACTION,
|
|
|
|
CONSTRAINT CK_CannotFollowOwnAccount
|
|
CHECK (UserAccountID != FollowingID
|
|
)
|
|
);
|
|
|
|
CREATE
|
|
NONCLUSTERED INDEX IX_UserFollow_UserAccount_FollowingID
|
|
ON Social.UserFollow(UserAccountID, FollowingID);
|
|
|
|
CREATE
|
|
NONCLUSTERED INDEX IX_UserFollow_FollowingID_UserAccount
|
|
ON Social.UserFollow(FollowingID, UserAccountID);
|