Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

Required fields*

5
  • 1
    I do need NVARCHAR, 'exotic' characters are possible. Commented May 28, 2009 at 11:25
  • 2
    +1 for first statement. -1 for second. Even though it is absolutely correct that nvarchar uses twice the space of varchar, being absolutely sure you will only use "standard" characters is a major assumption, easily defeated by, for instance, fields with foreign words like names that contain "strange" characters. I am not sure keeping the assumption pays itself in terms of disk and memory space which is cheaper by the day, comparing to the headache it might bring. Commented May 28, 2009 at 11:26
  • I disagree, its wrong to put limitations on the db. The software must always handle the validation and the db has the freedom to grow whenever needed without any changes of the db. Commented May 28, 2009 at 11:58
  • 1
    @freggel - then surely every field should be a VARBINARY(MAX) so that it can hold any data the front end sends to it? Commented May 28, 2009 at 12:12
  • -1 until you motivate the first statement ... due to the way SQL stores this kind of data. NVARCHAR(max) is stored inline until the actual data is too large, in which case it is moved to out-of-line storage. Your point might still hold, but you need to motivate it better. Commented May 28, 2009 at 12:49