2010-08-17 4 views
4

Droite. J'ai donc créé une procédure stockée dans une base de données MySQL qui utilise SUBSTRING.Erreur SQL 1630: La fonction SUBSTRING n'existe pas .. hein?

L'exécution de la procédure par une requête me donne:

erreur SQL 1630: Fonction mydatabase.SUBSTRING n'existe pas

Je vous demande pardon?

+0

Qu'est-ce que vous obtenez lorsque vous exécutez: 'SELECT version();' ? –

+0

MySQL Version 5.1.41 - Je cours ceci en utilisant XAMPP sur Windows XP. –

+1

Pouvez-vous coller le code où vous l'utilisez? Vraisemblablement dans le code, vous n'êtes pas en train de le préfixer avec 'mydatabase.'? –

Répondre

18

Existe-t-il un espace après l'appel de la méthode à Substring avant la première parenthèse?

Il apparaît sur la ligne 40:

IF i > 1 AND j > 1 AND (s1_char = SUBSTRING (s2, j - 1, 1)) 

-à-dire Assurez-vous

select substring(CustomerName, 1, 4) AS CustName from MyTable; 

au lieu de:

select substring (CustomerName, 1, 4) AS CustName from MyTable; 
+0

Bingo. Juste testé cela et cela semblerait l'expliquer! –

+0

+1: Bonne prise! –

+0

Geez, espace sensible! –