MOTEUR DE RECHERCHE MULTI-MOTS AVEC UNE PROCÉDURE STOCKÉE

Messages postés
8
Date d'inscription
vendredi 20 février 2004
Statut
Membre
Dernière intervention
12 juillet 2005
-
Messages postés
8
Date d'inscription
vendredi 20 février 2004
Statut
Membre
Dernière intervention
12 juillet 2005
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/28779-moteur-de-recherche-multi-mots-avec-une-procedure-stockee

Messages postés
8
Date d'inscription
vendredi 20 février 2004
Statut
Membre
Dernière intervention
12 juillet 2005

non ce n'est que du SQL Server 2000, de plus tu ne pourra créer des procédures stockées dans Mysql qu'a partir de la version 5 que je n'ai pas encore utilisé bien qu'elle soit déjà sorti en version beta
Messages postés
314
Date d'inscription
mercredi 1 novembre 2000
Statut
Membre
Dernière intervention
20 août 2006

C koi commme code c du mysql
je savais pas qu on pouvait utiliser les is et les tant que avec du sql
Messages postés
8
Date d'inscription
vendredi 20 février 2004
Statut
Membre
Dernière intervention
12 juillet 2005

Ce precedent code n'est pas à jour voici la mise à jour:

CREATE procedure MapaSearch
@Test as varchar(200) = ''
as

set nocount off


Declare @Reste varchar(200)
Declare @strSQLWHERE varchar(200)
Declare @Mots varchar(200)
Declare @strSQL varchar(200)

SET @Mots = ''
SET @strSQL = 'SELECT Id,Title FROM callTender'
SET @Reste = @Test
SET @strSQLWHERE = ' WHERE'
select @Reste = (select RTRIM((select LTRIM(@Reste))))

while (@Reste != '')
begin
if (select CHARINDEX(' ',@Reste,1))>0
begin
select @Mots = (select SUBSTRING(@Reste,1,CHARINDEX(' ',@Reste,1)))
select @Reste = (select LTRIM((select SUBSTRING(@Reste,CHARINDEX(' ',@Reste, 1), len(@Reste)))))
SELECT @strSQLWHERE = (@strSQLWHERE + ' title LIKE ''%' + @Mots + '%'' AND')
end
else
begin
SELECT @strSQLWHERE = (@strSQLWHERE + ' title LIKE ''%' + @Reste + '%''')
set @Reste = ''
SELECT @strSQL = @strSQL + @strSQLWHERE
end

end
SET @strSQL = @strSQL + ' order by publicationDate desc'
exec (@strSQL)


GO