estoy migración de un SQLS2k legado a 2008R2, y parece que todos los accesos a los datos se realizó a través de procedimientos almacenados, y cualquier consultas personalizadas utilizar el legado *=
=*
sintaxis de combinación externa. Hay más de cien procs, así que no quiero abrirlos individualmente para ver si usa esa sintaxis (la mayoría no), ¿hay alguna manera de consultar los metadatos para obtener una lista de procs/funciones/views?/desencadena, luego recorra buscando las cadenas *=
o =*
, imprimiendo el nombre del objeto ofensivo?cómo buscar procedimientos almacenados Sql Server 2008 R2 para una cadena?
Mi formación es Oracle, sé cómo encontrar los puntos de vista de metadatos allí, pero yo soy un poco nuevo en SQL Server. La degradación de la versión de compatibilidad no es una opción.
gracias!
Glad que está reparando esto, que el código no debería haber sido utilizado incluso en SQL sServer 2000, ya que no es fiable y no siempre hace una combinación externa, a veces no se unen a una cruz. Afortunadamente, al mismo tiempo eliminará todas las otras combinaciones implícitas en esas consultas, ya que mezclar implícitas y explícitas también puede causar problemas. Las combinaciones implícitas son un antipatrón SQL de todos modos y no deberían usarse en ninguna base de datos. Vea el enlace para ejemplos: http: //stackoverflow.com/questions/1080097/the-multi-part-identifier-could-not-be-bound-on-sql-server-2008/1080407#1080407 – HLGEM