PDA

Ver la Versión Completa : Store proc. SQL server y LIKE en campo Memo


Cabanyaler
19-08-2003, 12:50:53
Hola compañeros.
Estoy un poco liado con esto. Creo que en un tiempo atrás encontré algo pero lo he buscado por todos los trucos de Ian Marteens, en los foros, en trucomania y no lo he visto. El problema con el que lidio es el siguiente.

Estoy intentando realizar una búsqueda por palabras en un conjunto de datos contenido en un Store procedure de ADO. La búsqueda, entre otros campos, incluye un campo memo, pero no me visualiza o encuentra nada cuando incluyo este campo. Al contrario si comento esa búsqueda por ese campo y dejo los demás si me devuelve resultados.
He incluido el operador CAST para convertirlo en string el campo de tipo Memo, pero ni aún así.
Destacar que el contenido de los parametros @DesACTVx_sp cuando no quiero filtrar nada por estos es vacio, es decir
DMProveedoresSql.ADOSP_BuscaProveedores.Parameters[2].Value := '';

La sintaxis del Sp es la siguiente:


/* Busca todos los proveedores que cumplan los requisitos establecidos en los parametros de:
Nombre de proveedor, descripcion de actividad por tres palabras, nombre del municipio, de la provincia o del país */

CREATE PROCEDURE ADOSP_BuscaProveedores
@NomPro_sp varchar(50), @DesACTV1_sp varchar(50), @DesACTV2_sp varchar(50), @DesACTV3_sp varchar(50),
@NomMun_sp varchar(24), @NomLoc_sp varchar(50), @NomProv_sp varchar(50), @NomPai_sp varchar(50)
AS
SELECT *
FROM DatosFiscales DF, DatosComerciales DC
WHERE DF.NomFis_Fis LIKE '%' + @NomPro_sp + '%'
AND( CAST(DF.Actv_Fis AS varchar(50)) LIKE '%' + @DesACTV1_sp + '%'
AND CAST(DF.Actv_Fis AS varchar(50)) LIKE '%' + @DesACTV2_sp + '%'
AND CAST(DF.Actv_Fis AS varchar(50)) LIKE '%' + @DesACTV3_sp + '%')
AND DF.MunFis_Fis LIKE '%' + @NomMun_sp + '%'
AND DC.LocCom_Com LIKE '%' + @NomLoc_sp + '%'
AND DC.ProCom_Com LIKE '%' + @NomProv_sp + '%'
AND DC.PaiCom_Com LIKE '%' + @NomPai_sp + '%'
AND DC.CodCom_Com = DF.CodFis_Fis
ORDER BY NomFis_Fis


la pregunta es en concreto:

¿Como hago en SQL Server una busqueda LIKE en campos memo?

Muchas gracias por adelantado.;)

Cabanyaler
19-08-2003, 13:31:02
eran los NULL y las conexiones logicas entre los campos de búsqueda de la actividad, en lugar de AND son OR.
Gracias nuevamente.