* Changes varchar(36) columns to UUID type in MSSQL - this will be much more efficient
* ===As always, please, please backup your database before applying this patch===
* Thanks Ruud Lathrop (for the patch) and StrawberryFride (for the review)
This commit is contained in:
Justin Clarke Casey
2009-02-19 18:09:10 +00:00
parent 06ece33bee
commit 0760956561
30 changed files with 1125 additions and 180 deletions

View File

@@ -0,0 +1,29 @@
BEGIN TRANSACTION
CREATE TABLE dbo.Tmp_userfriends
(
ownerID uniqueidentifier NOT NULL,
friendID uniqueidentifier NOT NULL,
friendPerms int NOT NULL,
datetimestamp int NOT NULL
) ON [PRIMARY]
IF EXISTS(SELECT * FROM dbo.userfriends)
EXEC('INSERT INTO dbo.Tmp_userfriends (ownerID, friendID, friendPerms, datetimestamp)
SELECT CONVERT(uniqueidentifier, ownerID), CONVERT(uniqueidentifier, friendID), friendPerms, datetimestamp FROM dbo.userfriends WITH (HOLDLOCK TABLOCKX)')
DROP TABLE dbo.userfriends
EXECUTE sp_rename N'dbo.Tmp_userfriends', N'userfriends', 'OBJECT'
CREATE NONCLUSTERED INDEX IX_userfriends_ownerID ON dbo.userfriends
(
ownerID
) WITH( STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
CREATE NONCLUSTERED INDEX IX_userfriends_friendID ON dbo.userfriends
(
friendID
) WITH( STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
COMMIT