我有一个表列表,我必须更改所有列的VARCHAR数据类型,而不是NVARCHAR数据类型。
在更改为NVARCHAR时,我应该获取所有非null和null列。它应该将具有> 4000的列的大小更改为NVARCHAR(MAX),并且希望在转换为NVARCHAR时将主键列的大小更改为448.当大小超过448时,主键列会在转换为NVARCHAR时导致问题索引错误
答案 0 :(得分:1)
此查询将为您提供所有具有长度和可为空性的varchar
列的列表
SELECT TABLE_CATALOG,
TABLE_SCHEMA,
TABLE_NAME,
COLUMN_NAME,
CHARACTER_OCTET_LENGTH,
IS_NULLABLE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE DATA_TYPE='varchar'
你的问题不清楚,我可以提供更多帮助。
在更改为NVARCHAR时,我应该获取所有非null和null的内容 列
这是否意味着您希望保留可空性属性?请更清楚地询问。