Files
Shogi/Shogi.Database/Session/Stored Procedures/ReadSession.sql
Lucas Morgan 51d234d871 Replace custom socket implementation with SignalR.
Replace MSAL and custom cookie auth with Microsoft.Identity.EntityFramework
Also some UI redesign to accommodate different login experience.
2024-08-25 03:46:44 +00:00

33 lines
731 B
SQL

CREATE PROCEDURE [session].[ReadSession]
@Id [session].[SessionSurrogateKey]
AS
BEGIN
SET NOCOUNT ON -- Performance boost
SET XACT_ABORT ON -- Rollback transaction on error
SET TRANSACTION ISOLATION LEVEL SNAPSHOT -- Ignores data changes that happen after the transaction begins.
BEGIN TRANSACTION
-- Session
SELECT
Id,
Player1Id,
Player2Id,
CreatedDate
FROM [session].[Session]
WHERE Id = @Id;
-- Player moves
SELECT
mv.[From],
mv.[To],
mv.IsPromotion,
piece.[Name] as PieceFromHand
FROM [session].[Move] mv
INNER JOIN [session].[Session] sess ON sess.Id = mv.SessionId
LEFT JOIN [session].Piece piece on piece.Id = mv.PieceIdFromHand
WHERE sess.[Id] = @Id;
COMMIT
END