Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este tema se describe la compatibilidad de Entity SQL con literales.
Nulo
El literal null se usa para representar el valor NULL para cualquier tipo. Un literal null es compatible con cualquier tipo.
Los valores NULL con tipo se pueden crear mediante una conversión a través de un literal NULL. Para obtener más información, consulte CAST.
Para obtener reglas sobre dónde se pueden usar literales null flotantes libres, vea Literales NULL y Inferencia de tipos.
Boolean
Los literales booleanos se representan mediante las palabras clave true y false.
Entero
Los literales enteros pueden ser de tipo Int32 o Int64. Un Int32 literal es una serie de caracteres numéricos. Un Int64 literal es una serie de caracteres numéricos seguidos de una L mayúscula.
Decimal
Un número de punto fijo (decimal) es una serie de caracteres numéricos, un punto (.) y otra serie de caracteres numéricos seguidos de una "M" mayúscula.
Float, Double
Un número de punto flotante de precisión doble es una serie de caracteres numéricos, un punto (.) y otra serie de caracteres numéricos que posiblemente van seguidos de un exponente. Un número de punto flotante de precisión sencilla (o float) es una sintaxis de número de punto flotante de precisión doble seguida de la f minúscula.
Cuerda
Una cadena es una serie de caracteres entre comillas. Las comillas pueden ser comillas simples (') o ambas comillas dobles ("). Los literales de cadena de caracteres pueden ser Unicode o no Unicode. Para declarar un literal de cadena de caracteres como Unicode, prefijo el literal con una mayúscula "N". El valor predeterminado es literales de cadena de caracteres no Unicode. No puede haber espacios entre la N y la carga literal de cadena, y la N debe estar en mayúsculas.
'hello' -- non-Unicode character string literal
N'hello' -- Unicode character string literal
"x"
N"This is a string!"
'so is THIS'
Fecha y hora
Un literal datetime es independiente de la configuración regional y se compone de una parte de fecha y una parte de hora. Las partes de fecha y hora son obligatorias y no hay valores predeterminados.
La parte de fecha debe tener el formato : YYYY--MMDD, donde YYYY es un valor de año de cuatro dígitos entre 0001 y 9999, MM es el mes comprendido entre 1 y 12 y DD es el valor de día válido para el mes MMdeterminado.
La parte de tiempo debe tener el formato :HHMM[:[SS.fffffff]], donde HH es el valor de hora entre 0 y 23, MM es el valor de minuto entre 0 y 59, SS es el segundo valor entre 0 y 59 y fffffff es el segundo valor fraccionario entre 0 y 9999999. Todos los intervalos de valores son inclusivos. Las fracciones de segundo son opcionales. Los segundos son opcionales a menos que se especifiquen fracciones de segundo; en este caso, se requieren segundos. Cuando no se especifican segundos o fracciones de segundo, se usará en su lugar el valor predeterminado de cero.
Puede haber cualquier número de espacios entre el símbolo DATETIME y la carga literal, pero no hay líneas nuevas.
DATETIME'2006-10-1 23:11'
DATETIME'2006-12-25 01:01:00.0000000' -- same as DATETIME'2006-12-25 01:01'
Tiempo
Un literal de hora es independiente de la configuración regional y se compone solo de una parte de tiempo. La parte de tiempo es obligatoria y no hay ningún valor predeterminado. Debe tener el formato HH:MM[:SS[.fffffff]], donde HH es el valor de hora entre 0 y 23, MM es el valor de minuto entre 0 y 59, SS es el segundo valor entre 0 y 59, y fffffff es el segundo valor de fracción entre 0 y 9999999. Todos los intervalos de valores son inclusivos. Las fracciones de segundo son opcionales. Los segundos son opcionales a menos que se especifiquen fracciones de segundo; en este caso, se requieren segundos. Cuando no se especifican segundos o fracciones, se usará en su lugar el valor predeterminado de cero.
Puede haber cualquier número de espacios entre el símbolo TIME y la carga literal, pero no hay líneas nuevas.
TIME'23:11'
TIME'01:01:00.1234567'
Desplazamiento de Fecha y Hora
Un literal datetimeoffset es independiente de la configuración regional y se compone de una parte de fecha, una parte de hora y una parte de desplazamiento. Todas las partes de fecha, hora y desplazamiento son obligatorias y no hay valores predeterminados. La parte de fecha debe tener el formato AAAA-MM-DD, donde AAAA es un valor de año de cuatro dígitos entre 0001 y 9999, MM es el mes comprendido entre 1 y 12 y DD es el valor de día válido para el mes dado. La parte de tiempo debe tener el formato HH:MM[:SS[.fffffff]], donde HH es el valor de hora entre 0 y 23, MM es el valor de minuto entre 0 y 59, SS es el segundo valor entre 0 y 59, y fffffff es el segundo valor fraccionario entre 0 y 9999999. Todos los intervalos de valores son inclusivos. Las fracciones de segundo son opcionales. Los segundos son opcionales a menos que se especifiquen fracciones de segundo; en este caso, se requieren segundos. Cuando no se especifican segundos o fracciones, se usará en su lugar el valor predeterminado de cero. La parte de desplazamiento debe tener el formato {+|-}HH:MM, donde HH y MM tienen el mismo significado que en la parte de tiempo. Sin embargo, el intervalo del desplazamiento debe estar comprendido entre -14:00 y + 14:00.
Puede haber cualquier número de espacios entre el símbolo DATETIMEOFFSET y la carga literal, pero no hay líneas nuevas.
DATETIMEOFFSET'2006-10-1 23:11 +02:00'
DATETIMEOFFSET'2006-12-25 01:01:00.0000000 -08:30'
Nota:
Un valor literal de Entity SQL válido puede estar fuera de los intervalos admitidos para CLR o el origen de datos. Esto podría dar lugar a una excepción
Binario
Un literal de cadena binaria es una secuencia de dígitos hexadecimales delimitados por comillas simples después del binario de palabra clave o el símbolo X de método abreviado o x. El símbolo X de método abreviado no distingue mayúsculas de minúsculas. Se permiten cero o más espacios entre la palabra clave binary y el valor de cadena binaria.
Los caracteres hexadecimales también no distinguen mayúsculas de minúsculas. Si el literal se compone de un número impar de dígitos hexadecimales, el literal se alineará con el siguiente dígito hexadecimal incluso hexadecimal mediante el prefijo del literal con un dígito cero hexadecimal. No hay ningún límite formal en el tamaño de la cadena binaria.
Binary'00ffaabb'
X'ABCabc'
BINARY '0f0f0f0F0F0F0F0F0F0F'
X'' -- empty binary string
GUID
Un GUID literal representa un identificador único global. Es una secuencia formada por la palabra clave GUID seguida de dígitos hexadecimales en el formato conocido como formato del Registro : 8-4-4-4-12 entre comillas simples. Los dígitos hexadecimales no distinguen mayúsculas de minúsculas.
Puede haber cualquier número de espacios entre el símbolo GUID y la carga literal, pero no hay líneas nuevas.
Guid'1afc7f5c-ffa0-4741-81cf-f12eAAb822bf'
GUID '1AFC7F5C-FFA0-4741-81CF-F12EAAB822BF'