Précédent   Forum des professionnels en informatique > Bases de données > Firebird > Outils
Outils Forum d'entraide sur les outils tiers pour Firebird
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 29/03/2008, 12h07   #1
Invité de passage
 
Inscription : janvier 2008
Messages : 6
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 6
Points : 1
Points : 1
Par défaut Test BLOB vide erreur (SQL Manager 2005)

Bonjour,

J'ai une table, qui contient un champ "comment" de type BLOB (taille 80, subtype 1, Charset ISO8859_1)
dans une procédure je parcours ma table et stock cette zone dans une variable "v_note" du meme type que "comment"
avec le debuger je voisque ma variable contient bien le bon résultat.
mais quand je fait: "if (:v_note is not null) then begin ...."
j'ai le message:
"SQL Parse Error in :fmDebug.Query
Parameter name expected."

qu'est ce qui ne va pas dans mon test, comment faire pour tester que mon BLOB n'est pas nul?

Merci

je suis sur une base Firebird avec SQL Manager 2005 for interbase/Firebird
Fred29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2008, 17h06   #2
rsc
Membre émérite
 
Avatar de rsc
 
Homme
Développeur informatique
Inscription : juin 2004
Messages : 699
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 61
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2004
Messages : 699
Points : 874
Points : 874
Pourquoi pas :
Code :
IF (v_note IS NOT NULL) then begin ....
?
A ce que l'ai compris, on utilise les : pour récupérer une valeur dans une variable dans une requête (...INTO :v_note), ou pour utiliser cette variable dans une requête (...WHERE MONCHAMP = :v_note), mais pas en dehors des requêtes.
__________________
Roland
rsc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/04/2008, 08h39   #3
Invité de passage
 
Inscription : janvier 2008
Messages : 6
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 6
Points : 1
Points : 1
J'ai essayé mais ce n'est pas mieux.

j'ai toujours le meme message d'erreur.
quand v_note est null, pas de probleme, mais quand il contient un texte j'ai une erreur.
y a t il une type spéciale à mettre pour mettre du texte dans un blob, car j'ai "subtype 1", mais je ne sais pas à quoi ça correspond.
Fred29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/04/2008, 08h50   #4
rsc
Membre émérite
 
Avatar de rsc
 
Homme
Développeur informatique
Inscription : juin 2004
Messages : 699
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 61
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2004
Messages : 699
Points : 874
Points : 874
Citation:
Envoyé par Fred29 Voir le message
quand v_note est null, pas de probleme, mais quand il contient un texte j'ai une erreur.
Il me semble que cela indiquerait que l'erreur vient du code après le then, non ? Qu'est-ce que tu as derrière ?

Pour les Blobs, je ne sais pas trop ce que signifie subtype 1, mais c'est ce que Firebird utilise de manière classique, donc ça ne devrait pas poser de pb.
__________________
Roland
rsc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/04/2008, 10h02   #5
rsc
Membre émérite
 
Avatar de rsc
 
Homme
Développeur informatique
Inscription : juin 2004
Messages : 699
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 61
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2004
Messages : 699
Points : 874
Points : 874
Une précision, trouvée sur firebirdfaq.org :
BLOB SUB_TYPE 1 in Firebird essentially means: textual Blob, while SUB_TYPE 0 is a binary Blob.
__________________
Roland
rsc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/04/2008, 19h37   #6
Invité de passage
 
Inscription : janvier 2008
Messages : 6
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 6
Points : 1
Points : 1
apres le if il y a rien,
mais en regardant avec le debuger
il me met :

Dynamic SQL Error. SQL error code = -104. Token unknown - line 1, column 47. Texte.


Statement:
-----------------------------------------------------
SELECT COUNT(*) FROM RDB$DATABASE WHERE ( Mon texte test is null)


il interprete pas mon v_note comme du texte
v_note contient :"Mon texte test"
Fred29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2008, 10h19   #7
Invité de passage
 
Inscription : janvier 2008
Messages : 6
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 6
Points : 1
Points : 1
Probleme Résolut
en utilisant FlameRobin ma procédure fonctionne parfaitement.
Fred29 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 23h13.


 
 
 
 
Partenaires

Hébergement Web