Précédent   Forum des professionnels en informatique > Bases de données > MySQL > SQL Procédural
SQL Procédural Forum d'entraide sur les triggers, les procédures stockées et les fonctions en MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/01/2012, 01h03   #1
Membre régulier
 
Avatar de flotho
 
Homme Florent THOMAS
Architecte de système d'information
Inscription : novembre 2006
Messages : 130
Détails du profil
Informations personnelles :
Nom : Homme Florent THOMAS
Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

Informations professionnelles :
Activité : Architecte de système d'information

Informations forums :
Inscription : novembre 2006
Messages : 130
Points : 87
Points : 87
Envoyer un message via Skype™ à flotho
Par défaut Procédures stockées, prepared statement et regexp dynamique

Bonjour à tous,

j'ai une function SQL qui me prépare un pattern d'expression régulière à partir d'un mot :
exemple :
'garage' devient '^.?g.?a.?r.?a.?g.?e.?$'

Ensuite dans ma proc j'ai cela :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
DELIMITER @@
CREATE PROCEDURE getVariableWordsCount(IN localRefVariableWord INT)
BEGIN
	.../...
 
	PREPARE req_entreprise FROM 'SELECT COUNT(DISTINCT mot) FROM matable WHERE mot REGEXP ? INTO @nb_corriges ';
 
                  .../...
				SET local_regexp = (SELECT generate_regex(splitted_libelle));
				SET @local_regexp = local_regexp;
				EXECUTE req_entreprise USING @local_regexp ;
				SET nb_corriges  = (SELECT @nb_corriges );
				.../...
	DEALLOCATE PREPARE req_entreprise;		
END;
@@
DELIMITER ;
Malheureusement, SELECT @nb_corriges me renvoie toujours zéro alors qu'en lançant a requête avec le résultat de la regex, cela me produit un résultat différent de zéro.
serait il impossible de générer dynamique?
J'ai aussi essayé avec :
Code :
1
2
 
SET @local_regexp = QUOTE(local_regexp);
Pas mieux.

Merci d'avance de vos conseils éclairés
__________________
Créateur www.kipigo.com
Fondateur www.tdeo.fr
Linux | Java | J2EE | NB Platform | Pentaho | PostgreSQL
flotho est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/01/2012, 01h32   #2
Membre régulier
 
Avatar de flotho
 
Homme Florent THOMAS
Architecte de système d'information
Inscription : novembre 2006
Messages : 130
Détails du profil
Informations personnelles :
Nom : Homme Florent THOMAS
Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

Informations professionnelles :
Activité : Architecte de système d'information

Informations forums :
Inscription : novembre 2006
Messages : 130
Points : 87
Points : 87
Envoyer un message via Skype™ à flotho
Cela ne provenait pas de ma procédure stockée mais de ma fonction qui faisait la regexp.

Merci
__________________
Créateur www.kipigo.com
Fondateur www.tdeo.fr
Linux | Java | J2EE | NB Platform | Pentaho | PostgreSQL
flotho est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h07.


 
 
 
 
Partenaires

Hébergement Web