2015-05-11 3 views
-5

Мне нужно руководство, относящееся к стандартам SQL. Мне поручено разработать небольшую базу данных, и мой менеджер ожидает, что я буду следовать стандартам типа данных и размера, соответствующим образом использую int и big int, если First name использует правильный тип данных varchar или char, в основном размер не резко varchar (60) или varchar (75), но используйте либо varchar (128), либо varchar (64) или varchar (256). Я не уверен в стандартах. Пожалуйста, направляйте меня относительно размера, насколько это отличается, если я объявляю varchar (60) вместо стандартного varchar (256). Каков список, начинается ли он с varchar (8) и заканчивается на varchar (256)Тип и размер данных SQL Server

+0

Прочтите документ char и varchar на msdb. https://msdn.microsoft.com/en-us/library/ms176089.aspx – Hiten004

+2

Извините, но пока мы рады помочь с проблемами, если вы можете тривиально искать документацию, вы действительно должны это сделать сами , –

+0

@Thomas_ITsavvy вы обычно избегаете varchar и char. Лучше всего использовать nvarchar. –

ответ

0

varchar будет использовать только столько места, сколько длина строки (до максимально допустимого). char будет использовать фиксированный размер независимо от размера хранимых данных. Есть NbO «стандарты», но вот некоторые рекомендации от MSDN:

  • Использование char, когда размеры записей данных столбца последовательны.
  • Использовать varchar, когда размеры записей данных столбца значительно различаются.
  • Использовать varchar(max), когда размеры записей данных столбца значительно различаются, а размер может превышать 8000 байт.

Есть также не стандарты в отношении надлежащей длины varchar. Здравый смысл сказал бы использовать максимальный размер, который могут быть ваши данные: 256 символов для фамилии кажутся более разумными. Нет никакой пользы от того, что я знаю, чтобы использовать кратность любого числа для размера, поскольку он хранится как переменная длина с нулевым терминатором.

Похоже, что у вашей организации могут быть определенные стандарты (использование кратных 8 и т. Д.), К которым вы, вероятно, должны придерживаться, но ничто в отрасли, о котором я знаю.

+0

Второе, что «Есть также не стандарты относительно правильной длины варчара». Между VARCHAR (32) и VARCHAR (40) нет разницы в производительности, хранении и т. Д. (При условии, что все данные, поступающие в поле, составляют менее 32 символов, а 40 - «на всякий случай». – JNevill

+0

Я думаю, что в этом день и возраст дешевой памяти и хранилища, не использующие nvarchar (с учетом возможных проблем, которые можно избежать с помощью юникода) не стоит будущего потенциального затруднения при работе с ошибками кодовой страницы http://stackoverflow.com/questions/144283/what-is- разностной-между-VARCHAR-и-NVARCHAR. –

Смежные вопросы