Fixed correct max column labels for varbinary, nvarchar and varchar (#692)

This commit is contained in:
AlexFsmn
2018-09-18 23:34:00 +02:00
committed by Karl Burtram
parent 98018c5292
commit d8c088e0f6

View File

@@ -108,25 +108,16 @@ namespace Microsoft.SqlTools.ServiceLayer.ObjectExplorer.SmoModel
} }
} }
// These types support Length // These types supports detailed information
switch (dataType.SqlDataType) switch (dataType.SqlDataType)
{ {
case SqlDataType.Char: case SqlDataType.Char:
case SqlDataType.NChar: case SqlDataType.NChar:
case SqlDataType.Binary: case SqlDataType.Binary:
case SqlDataType.VarChar: // Supports Max Length case SqlDataType.VarChar:
case SqlDataType.NVarChar: // Supports Max Length case SqlDataType.NVarChar:
case SqlDataType.VarBinary: // Supports Max Length case SqlDataType.VarBinary:
typeName += "("; typeName += $"({dataType.MaximumLength})";
if (dataType.MaximumLength == 0)
{
typeName += "max";
}
else
{
typeName += dataType.MaximumLength;
}
typeName += ")";
break; break;
case SqlDataType.Numeric: case SqlDataType.Numeric:
case SqlDataType.Decimal: case SqlDataType.Decimal:
@@ -137,6 +128,11 @@ namespace Microsoft.SqlTools.ServiceLayer.ObjectExplorer.SmoModel
case SqlDataType.DateTimeOffset: case SqlDataType.DateTimeOffset:
typeName += $"({dataType.NumericScale})"; typeName += $"({dataType.NumericScale})";
break; break;
case SqlDataType.VarBinaryMax:
case SqlDataType.NVarCharMax:
case SqlDataType.VarCharMax:
typeName += "(max)";
break;
} }
} }
return typeName; return typeName;