SQL Server 2012 está poniendo [corchetes] alrededor de los nombres de tabla y columna

12

Cuando arrastra la carpeta Columnas a la ventana del editor, la lista completa de columnas se agrega sin corchetes. Si arrastra columnas individualmente, tienen corchetes.

¿Hay alguna forma de apagar eso? No puedo encontrar nada en las opciones, y realmente son una distracción.

Gordon Bell
fuente

Respuestas:

20

No hay forma de prevenir esto. Microsoft considera que es mejor evitar que te dispares en el pie, probablemente porque la cantidad de personas que crean bases de datos, objetos o columnas con nombres incorrectos (p. Ej., my tableO date) o palabras clave reservadas (p. Ej., logO timestamp) supera en número a los que nunca lo hacen. entonces.

Había un elemento de Connect que pedía esta opción , y se descartó rápidamente y se cerró como "No se solucionará". Y, de hecho, muchos más usuarios pedían que se agregaran corchetes a los lugares donde antes no funcionaban .

Aaron Bertrand
fuente
La discusión secundaria sobre esta respuesta se ha movido al chat .
Paul White 9
9

Si está ejecutando SSMS 2017 al menos v17.6, ahora hay una opción para desactivar esto. En el cuadro de diálogo de opciones, vaya al "Explorador de objetos de SQL Server" y luego a "Comandos". Debajo del encabezado "Arrastrar / soltar" hay una nueva opción "Nombres de objetos envolventes con corchetes cuando se arrastra". Por defecto, esto está configurado en True, así que cámbielo a False. Es posible que sea necesario reiniciar el SSMS para que el cambio sea efectivo.

Nota: Cualquier objeto que necesite los corchetes (por ejemplo, con espacios u otros espacios en blanco / caracteres no alfanuméricos, palabras clave reservadas) todavía tendrá corchetes cuando se arrastre / suelte.

K Mullen
fuente
Sí, es una mejora. Pero si hace clic con el botón derecho en una tabla y elige Seleccionar ..., aún pone entre corchetes los nombres de las columnas.
Gordon Bell
2

Si bien no conozco ninguna opción para desactivar esta función, una simple ctrl+hy luego reemplazar ambas [y ]con un espacio vacío eliminará rápidamente los corchetes de los scripts generados de t-sql.

James H
fuente
0

Escuché que ssms 2017 v17.6 resolvió el problema con una configuración de configuración. pero no he descubierto cómo se puede configurar.

david
fuente
Técnicamente, esto responde a la pregunta, pero no es una respuesta terriblemente útil tal como está .....
RDFozz