The data type of a column of a partitioned table can't be changed.
It repeats this claim elsewhere such as here.
Yet I have never seen this fail.
CREATE PARTITION FUNCTION pf(int)
AS RANGE RIGHT FOR VALUES(10, 20, 30)
GO
CREATE PARTITION SCHEME ps
AS PARTITION pf
ALL TO ([primary]);
GO
CREATE TABLE Part
(
id INT IDENTITY PRIMARY KEY CLUSTERED,
name VARCHAR(50)
) ON ps(id);
GO
INSERT INTO Part (name)
SELECT TOP(40) CONVERT(VARCHAR(50), [text])
FROM sys.messages;
GO
ALTER TABLE Part
ALTER COLUMN [name]
SQL_VARIANT;
GO
So what am I missing?