Saltar al contenido

‘CONCAT’ no es un nombre de función incorporado reconocido

Contamos con la solución a este conflicto, al menos eso pensamos. Si continuas con alguna pregunta coméntalo, que sin dudas

Solución:

CONCAT se introdujo en SQL Server 2012; no hay forma de que funcione en SQL Server 2008 R2. De la documentación:

ingrese la descripción de la imagen aquí

Tampoco hay forma de que falle en 2012+, incluso con el nivel de compatibilidad. Así que haz que tu gente revise SELECT @@VERSION; en ambos servidores; lo encontrarás donde CONCAT falla es < 11. Para que su código sea compatible con versiones anteriores, deberá usar el estándar string operador de concatenación (+). No sé cómo harías esto con una función escalar, a menos que siempre hayas usado el exacto mismo número de cadenas de entrada y cambias tu código para usar dbo.CONCAT() en vez de CONCAT() (habrá escenarios en los que importa, además, si su función hace algo que el nativo no hace, desea un comportamiento consistente si / cuando actualiza). Así que no recomendaría ese enfoque. Es posible que también deba agregar NULL manejo y otros cambios menores (imposible decirle cómo cambiar su script existente exactamente, si no podemos verlo).

Puede usar la función ODBC CONCAT de esta manera:

SELECT fn CONCAT('foo ', 'test') 

El problema con esto es que esta función solo te permite dos parámetros a la vez. Entonces, a menos que quieras usar más de dos como este:

SELECT fn CONCAT('foo ', fn CONCAT('test ', 'buddy')) 

También podría usar el operador ‘+’.

Recuerda dar recomendación a este post si si solucionó tu problema.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *