views:

46

answers:

2

How can one set the column value length to a minimum and/or exact length using MS SQL Management Studio?

A: 

Not sure what you are asking here. If you are asking how to make sure the user only enters a certain number of characters into a column of a table, SSMS is not the tool to do this. You would need to enforce this at the database level, through a check constraint, for example. Or through your application.

Randy Minder
+2  A: 

For character datatypes (char/nchar/varchar/nvarchar), you set the length: alt text

Remember that for char and nchar, you'll ALWAYS be allocated the x bytes space, and your string will be padded. nchar always has 2 x allocated, but the string length will be as you specify.

For string-length minimums, that really should be left to the application.

SQL Server does allow you to put a constraint on a column.

In this example, the constraint is that the column value be >= 10.

Simply write a TSQL expression in the Expression field.

  • LEN(myColumn) = 20 - the value being inserted/updated in the column is length of 20.
  • LEN(RTRIM(LRTIM(myColumn))) = 20 - the value being inserted/updated in the column is length of 20, with all leading/trailing whitespace removed.

alt text

p.campbell