· 8 years ago · Mar 08, 2018, 03:14 AM
1DROP TABLE IF EXISTS dbo.CONVERT_ME;
2
3CREATE TABLE dbo.CONVERT_ME (
4 ID BIGINT NOT NULL,
5 OVERWEIGHT_COLUMN VARCHAR(MAX) NOT NULL,
6 PRIMARY KEY (ID)
7);
8
9INSERT INTO dbo.CONVERT_ME WITH (TABLOCK)
10SELECT TOP (1500000) ROW_NUMBER() OVER (ORDER BY (SELECT NULL)), REPLICATE('Z', 50)
11FROM master..spt_values t1
12CROSS JOIN master..spt_values t2
13OPTION (MAXDOP 1);
14
15SET STATISTICS IO, TIME ON;
16
17BEGIN TRANSACTION;
18
19ALTER TABLE dbo.CONVERT_ME
20ALTER COLUMN OVERWEIGHT_COLUMN VARCHAR(50) NOT NULL WITH (ONLINE = OFF);
21
22DROP TABLE IF EXISTS dbo.CONVERT_ME;
23
24CREATE TABLE dbo.CONVERT_ME (
25 ID BIGINT NOT NULL,
26 OTHER_COLUMN VARCHAR(8000) NOT NULL,
27 OVERWEIGHT_COLUMN VARCHAR(MAX) NOT NULL,
28 PRIMARY KEY (ID)
29);
30
31INSERT INTO dbo.CONVERT_ME WITH (TABLOCK)
32SELECT TOP (1500000) ROW_NUMBER() OVER (ORDER BY (SELECT NULL)), REPLICATE('Z', 4200), REPLICATE('Z', 50)
33FROM master..spt_values t1
34CROSS JOIN master..spt_values t2
35OPTION (MAXDOP 1);