Estoy intentando hacer un nuevo procedimiento almacenado, pero me está volviendo loco.
Si lo pruebo en el servidor local funciona de maravillas, pero cuando intento probarlo en el servidor web me muestra el siguiente mensaje:
El nombre de objeto 'eventos' no es válido
Aclaro que la tabla con el nombre 'eventos' existe.
Si lo hago de esta forma no funciona
Código:
Pero si pruebo con esto funciona bienCREATE PROCEDURE sst_search_events ( @lengua varChar(1) = "S", @area varChar(3) = "%", @search varChar(250) ) AS SELECT TOP 6 '_events_view.asp?event=' + CAST(e.id_evento AS varchar(6)), e.fecha, e.titulo, e.e_titulo, e.p_titulo, e.pais, e.e_pais, e.p_pais, KEY_EVENTS.[RANK] FROM eventos AS e INNER JOIN CONTAINSTABLE(eventos, *, @search) AS KEY_EVENTS ON e.id_evento = KEY_EVENTS.[KEY] WHERE KEY_EVENTS.[RANK] > 10 AND e.area LIKE @area AND e.lengua LIKE @lengua UNION SELECT TOP 6 '_events_detail.asp?det=' + CAST(d.id_evento_sub AS varchar(6)), even.fecha, d.titulo, d.titulo, d.titulo, even.titulo, even.e_titulo, even.p_titulo, KEY_EVENTS.[RANK] FROM eventos_sub AS d INNER JOIN eventos AS even ON d.id_evento_cab = even.id_evento INNER JOIN CONTAINSTABLE(eventos_sub, *, @search) AS KEY_EVENTS ON d.id_evento_sub = KEY_EVENTS.[KEY] WHERE KEY_EVENTS.[RANK] > 10 AND d.lengua LIKE @lengua ORDER BY [RANK] DESC
Código:
¿Qué puede estar pasando, que hago mal? CREATE PROCEDURE st_search_events_sub ( @lengua varChar(1) = "S", @area varChar(3) = "%", @search varChar(250) ) AS EXECUTE(' SELECT TOP 6 e.id_evento, e.fecha, e.titulo, e.e_titulo, e.p_titulo, pais, e_pais, p_pais FROM eventos AS e INNER JOIN CONTAINSTABLE(eventos, *, '' ' + @search + ' '') AS KEY_EVENTS ON e.id_evento = KEY_EVENTS.[KEY] WHERE KEY_EVENTS.[RANK] > 10 AND e.area LIKE ''%' + @area + '%'' AND e.lengua LIKE ''%' + @lengua + '%'' ORDER BY KEY_EVENTS.[RANK] DESC, fecha DESC ')