No es realmente un problema que estoy enfrentando. Pero me pregunto si la primera línea en el código escrito a continuación debe tratarse como un error de sintaxis por SQL Server debido a la coma adicional (,) al final de la lista de columnas. Pero funciona bien el código. ¿Alguien sabe el motivo?¿Por qué SQL Server no trata este código de manera errática?
CREATE TABLE #TEMP(COL1 INT,COL2 VARCHAR,)
INSERT INTO #TEMP VALUES (1,'A')
SELECT * FROM #TEMP
DROP TABLE #TEMP
supongo que se trata de un diseño decisión de facilitar sql dinámico, cuando no tiene que omitir la coma. Similar a por qué LINQ permite un tipo anónimo en C#: 'new {a = 1, b = 2, c = 3,}'. –
No debería estar permitido por [la gramática] (http://msdn.microsoft.com/en-us/library/ms174979.aspx) pero [principalmente inofensivo] (https://connect.microsoft.com/SQLServer/ feedback/details/273348/trailing-comma-allowed-in-create-table) –
@Martin Smith: Eso depende, si n en el diagrama incluye 0 o no. La sintaxis no contiene ninguna definición (al menos ninguna que encontré). – Stefan