Probleme avec mes insert en SQL

Signaler
Messages postés
11
Date d'inscription
vendredi 10 janvier 2003
Statut
Membre
Dernière intervention
18 février 2003
-
Messages postés
11
Date d'inscription
jeudi 12 mai 2005
Statut
Membre
Dernière intervention
11 décembre 2010
-
J'utilise Delphi 7 et SQL SERVER 2000

J'ai une form qui contient 2 Edit (EnomCategorie et EdescriCategorie). J'insere le contenu de leur champs dans ma table (tblCategorie) à l'aide d'une ADOQuery (QRequete).

Tout marche, pas de pb, c'est enregistré.
Seulement voilà, sur mon EnomCategorie, j'ai mis la propriété Maxlength à 30. Et par exemple si j'insère 'Niveau1' dans champ 'nomCategorie', il va bien m'enregistrer toto mais ils va compléter ce nom avec des blancs pour avoir 30 caractères à enregistrer dans ma base, ce qui me donne d'enregistrer : 'Niveau1 '.

Commennt faire pour qu'il enregistre juste 'Niveau1', sans tout les blancs.

Voici mon code.

With MDConnection.QRequete Do
Begin
SQL.Clear;
SQL.Add('insert into tblCategorie');
SQL.Add('values ('+QuotedStr(EnomCategorie.Text)+','
+QuotedStr(EdescriCategorie.Text)+')');
End

Merci d'avance!!

+QuotedStr(EdescriCategorie.Text)+')');

5 réponses

Messages postés
4297
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
31
Pourquoi modifier la propriété MaxLength ?
La longueur maximum de la saisie s'ajuste automatiquement à celle du champ auquel le composant est lié.
May Delphi be with you
Messages postés
11
Date d'inscription
vendredi 10 janvier 2003
Statut
Membre
Dernière intervention
18 février 2003

-------------------------------
Réponse au message :
-------------------------------

> Pourquoi modifier la propriété MaxLength ?
> La longueur maximum de la saisie s'ajuste automatiquement à celle du champ auquel le composant est lié.
> May Delphi be with you
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > J'utilise Delphi 7 et SQL SERVER 2000
> >
> > J'ai une form qui contient 2 Edit (EnomCategorie et EdescriCategorie). J'insere le contenu de leur champs dans ma table (tblCategorie) à l'aide d'une ADOQuery (QRequete).
> >
> > Tout marche, pas de pb, c'est enregistré.
> > Seulement voilà, sur mon EnomCategorie, j'ai mis la propriété Maxlength à 30. Et par exemple si j'insère 'Niveau1' dans champ 'nomCategorie', il va bien m'enregistrer toto mais ils va compléter ce nom avec des blancs pour avoir 30 caractères à enregistrer dans ma base, ce qui me donne d'enregistrer : 'Niveau1 '.
> >
> > Commennt faire pour qu'il enregistre juste 'Niveau1', sans tout les blancs.
> >
> > Voici mon code.
> >
> > With MDConnection.QRequete Do
> > Begin
> > SQL.Clear;
> > SQL.Add('insert into tblCategorie');
> > SQL.Add('values ('+QuotedStr(EnomCategorie.Text)+','
> > +QuotedStr(EdescriCategorie.Text)+')');
> > End
> >
> > Merci d'avance!!
> >
> > +QuotedStr(EdescriCategorie.Text)+')');
>
Messages postés
11
Date d'inscription
vendredi 10 janvier 2003
Statut
Membre
Dernière intervention
18 février 2003

Mon composant Edit n'est pas lié directetement à un champ, j'insère juste son contenu dans ma table, le composant ne peut donc pas connaitre la taille du champs. Cependant il faut absoluement que je mette une taille maxi de sasie et que les espaces blancs ne soit pas enregistrés.
Messages postés
4297
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
31
C'est simple : puisque tu as accès à la taille du champ de la table (propriété Size), il suffit de mettre la propriété MaxLength de ton composant TEdit à cette valeur :

Edit1.MaxLength := Table1.FieldByName('MonChamp').Size;

Mais pourquoi ne prends-tu pas des composants TDbEdit ?

May Delphi be with you
Messages postés
11
Date d'inscription
jeudi 12 mai 2005
Statut
Membre
Dernière intervention
11 décembre 2010

Tu utilise sql server 2000 et delphi 7 depuis sql tu peux définir la taille de tes champ de telle sorte qu'il puisse ^tre controler par la base de données.

Essayes et si tu as un autre problème tu me fais signe.

Valery DONFACK GUEFACK
valpt2001@yahoo.fr