2009-05-06 21 views
5

Quando creo una nuova colonna VARCHAR in Microsoft SQL Server Manager Studio, il suo valore predefinito è 50 lunghezza. Questa lunghezza ha qualche significato speciale? Se teoricamente ho la possibilità di scegliere per una lunghezza tra 30 e 70, non è meglio andare per default che sono potenza di 2 (come 32 o 64 in questo caso)?SQL: Perché varchar (50) è il valore predefinito?

+1

se lo fai "create table t (col varchar)" si otterrà un varchar (1), che è anche un default e una bella potenza di 2 (2^0) :) – Aleris

+0

Perché il cielo è blu? ;) – kenny

+0

Beh, c'è una spiegazione per questo: http://www.sciencemadesimple.com/sky_blue.html Quindi spero ci sia anche una spiegazione per la mia domanda, o forse in effetti è stata una persona che ha deciso che il suo numero fortunato dovrebbe essere il valore predefinito, ma poi di nuovo è anche una spiegazione ... :) – Gidon

risposta

5

Perché è un bel numero piccolo rotondo ... Seriamente penserei che la sua decisione piuttosto arbitraria che è stata presa.

2

I poteri di 2 sono privi di significato quando si tratta delle possibili lunghezze delle stringhe.

-2

è più efficiente se i tipi di dati stringa di meno di 50 caratteri vengono dichiarati come CHAR() piuttosto che VARCHAR()

+0

chi ha votato giù ... è perché è falso? – Augiwan

+0

Sì, è falso – RThomas

Problemi correlati