2016/10/30

PALABRAS RESERVADAS PARA NOMBRAR OBJETOS

PROBLEMA: Cuantos de nosotros no hemos nombrado una llave primaria como ID, o una tabla que utilizamos a para almacenar los usuarios del sistema como USER, aunque SQL SERVER permite usar dichas palabras reservadas como nombres de objetos, con el pasar de los días se vuelve un poco complejo estar utilizando los corchetes o brackets [ ] para hacer referencia los objetos que fueron nombrados de esta manera.

SOLUCION: Más que una solución, les comparto un poco de la experiencia que he tenido que vivir en los últimos días a causa de manipular una BD existente y que fuera creada utilizando estas palabras en los objetos, tal vez podrán decir ¨Naaaa no hay problema, no pasa nada si le ponemos los corchetes¨, pero créanme que se vuelve algo tedioso.

Intentemos ejecutar la siguiente consulta:
USE AdventureWorks2014;  
CREATE TABLE table ( 
 sequence INT IDENTITY(1,1)
 , user VARCHAR(100)
 , level SMALLINT 
 , date DATETIME
);
Pero que pasa si encerramos los nombres dentro de corchetes []
USE AdventureWorks2014;  
CREATE TABLE [table] ( 
 [sequence] INT IDENTITY(1,1)
 , [user] VARCHAR(100)
 , [level] SMALLINT 
 , [date] DATETIME
);
Ahora intentemos realizar una consulta sobre la tabla :
USE AdventureWorks2014;  
SELECT * FROM table; 
No es posible, tenemos que encerrar el nombre de la tabla dentro de corchetes [ ]
USE AdventureWorks2014;  
SELECT * FROM [table]; 
Aunque no tenemos datos en la tabla, si podemos realizar la consulta.

Ahora, esto es responsabilidad de las personas encargadas del diseño de la BD, sin embargo recuerden que debemos facilitar el mantenimiento y las consultas a todas las demás personas que vayan a requerir del acceso a la BD, por lo tanto es importante tomar todas estas consideraciones en cuenta, mi recomendación: No debemos usar palabras reservadas para nombras objetos.


Nos leemos después, SALUDOS!.
COMPARTE ESTA INFORMACION SI TE PARECIO INTERESANTE

0 comentarios:

Publicar un comentario