Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

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


Information sur la source

Description

Cette procédure permet de recherche des infos dans une base de données en entrant plusieurs mots clés ça peut être utile des fois
 

Source

  • CREATE procedure RechercheMultiMots
  • @Test as varchar(200)
  • as
  • Declare @Reste varchar(200)
  • Declare @strSQL varchar(200)
  • Declare @Mots as varchar (200)
  • SET @Mots = ''
  • SET @strSQL = 'SELECT * FROM callTender WHERE'
  • SET @Reste = @Test
  • if (select CHARINDEX(' ',@Reste,1))>0
  • select @Reste = (select RTRIM((select LTRIM(@Reste))))
  • while (@Reste != @Mots)
  • begin
  • if (select CHARINDEX(' ',@Reste,1))>1
  • begin
  • select @Mots = (select SUBSTRING(@Reste,1,CHARINDEX(' ',@Reste,1)))
  • select @Reste = (select LTRIM((select SUBSTRING(@Reste,CHARINDEX(' ',@Reste, 1), len(@Reste)))))
  • SELECT @strSQL = (@strSQL + ' title LIKE ''%' + @Mots + '%'' AND')
  • end
  • else
  • begin
  • set @Mots = @Reste
  • SELECT @strSQL = (@strSQL + ' title LIKE ''%' + @Mots + '%''')
  • end
  • /*print (@strSQL)*/
  • end
  • exec (@strSQL)
CREATE procedure RechercheMultiMots
	@Test as varchar(200)
as



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

SET @Mots = ''
SET @strSQL = 'SELECT * FROM callTender WHERE'
SET @Reste = @Test

if (select CHARINDEX(' ',@Reste,1))>0

	select @Reste = (select RTRIM((select LTRIM(@Reste))))

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

exec (@strSQL)

Commentaires et avis

signaler à un administrateur
Commentaire de Fredon88 le 17/01/2005 15:50:28

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

signaler à un administrateur
Commentaire de RM50Man le 24/05/2005 22:27:10

C koi commme code c du mysql
je savais pas qu on pouvait utiliser les is et les tant que avec du sql

signaler à un administrateur
Commentaire de Fredon88 le 12/07/2005 13:43:56

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

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

faire une somme sur le resultat d'une procedure stockée [ par lijohann ] salut, mon probleme est que je voudrais pouvoir recupérer la somme d'un des champs renvoyés par une procedure stockée dans une autre procedure stockée Moteur de recherche SQL 2000 [ par vindavid38 ] ZanTarBonjour je souhaiterais savoir  si sql 2000 a un moteur spécial pour le fonctionnement du partitionnement horizontal?? Est ce que procedures stockée avec Mysql [ par emna_bz ] Bonjour ,J'ai crée la procedure stockée suivante: CREATE procedure spGetCategorie(Catlien varchar(30) ,out Name varchar(30) ) BEGI 1ere procedure stockée [ par matlocker ] Bonjour a tous,Je realise acuellement ma premiere procedure stockée sous SQL Server 2000.Je dois recuperer dans une table la liste des symbol qui procedure stockée et variable [ par exyacc ] salut, j'aimerai faire une procedure stockée qui copie une tables d'une base origine dans une autre base, qd je passe le nom en variable, ca marc une procedure stockée pour la selection!! [ par ange_sali ] Bonsoir tt le mondeest ce que on peut faire une procédure stockée avec un "SELECT" qui retourne ++ lignes comme résultat?et si oui comment il faut fai procedure stockée qui return [ par rosa_rio ] bonjour je cré une procedure stoquée en sql server qui return une valeur comme suit:create proc p1 @var intasreturn @varet je sais pas comment l'execu Procedure stockée [ par Matt67 ] Bonjour,je veux dans une procedure stockee creer une database dont le nom est passé en paramètre :create procedure test(IN dbname varchar(20))begin    Procedure stockees : Nb de parametres variables [ par kimwu ] Bonjour, J'ai des procedure stockes (ou plutot requetes stockés) dans une base de donnée access, que j'accede à partir d'un prgm en vb.net J'ai un Moteur de recherche avancé [ par Blacknight91titi ] Bonjour,Pour mon site je réalise un moteur de recherche interne.Jusqu'a la version 3 de celui ci tout allait bien, c'était un moteur de recherche plut


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,515 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.