44 lines
673 B
SQL
44 lines
673 B
SQL
BEGIN TRANSACTION;
|
|
|
|
DELETE FROM
|
|
PageReference
|
|
WHERE
|
|
PageId = @PageId;
|
|
|
|
INSERT INTO PageReference
|
|
(
|
|
PageId,
|
|
ReferencesPageName,
|
|
ReferencesPageNavigation,
|
|
ReferencesPageId
|
|
)
|
|
SELECT DISTINCT
|
|
@PageId,
|
|
Coalesce(Ref.[Namespace] || ' :: ', '') || Ref.Name,
|
|
Ref.Navigation,
|
|
P.Id
|
|
FROM
|
|
TempReferences as Ref
|
|
LEFT OUTER JOIN [Page] as P
|
|
ON P.Navigation = Ref.Navigation;
|
|
|
|
UPDATE
|
|
PageReference
|
|
SET
|
|
ReferencesPageNavigation = I.Navigation
|
|
FROM (
|
|
SELECT DISTINCT
|
|
Id,
|
|
P.Navigation
|
|
FROM
|
|
PageReference as PR
|
|
INNER JOIN [Page] as P
|
|
ON P.Id = PR.ReferencesPageId
|
|
WHERE
|
|
P.Id = 77
|
|
) AS I
|
|
WHERE
|
|
I.Id = PageReference.ReferencesPageId;
|
|
|
|
COMMIT TRANSACTION;
|