Exécution de query Unidac - Données de chaîne ou binaires seront tronquées
Bonjour à tous,
je travail avec Delphi et les composants UNIDAC de DevArt pour communiquer avec des bases de données de type Sql server ou Firebird (Notre application fonctionne sous les 2 systèmes).
J'ai rencontré un problème un peu spécial que j'aimerais bien élucidé. Il ne se produit qu'avec les bases de données SQL Server, tout fonctionne bien avec Firebird.
J'ai reproduit le problème dans une petite application de la manière suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| Procedure TForm1.ExecQry(prepare_ : Boolean;
LabelOK_, LabelKO_ : TLabel );
Begin
UniQuery1.UnPrepare;
UniQuery1.Close;
UniQuery1.SQL.Clear;
UniQuery1.LockMode:=lmOptimistic;
LabelOK_.Visible:=False;
LabelKO_.Visible:=False;
Memo2.Clear;
Try
UniQuery1.SQL.Add(Memo1.Lines.Text);
UniQuery1.Filtered:=False;
UniQuery1.ReadOnly:=False;
UniQuery1.RefreshOptions:=[roAfterUpdate];
UniQuery1.Options.StrictUpdate:=False;
If prepare_ = True Then UniQuery1.Prepare;
If UniQuery1.IsQuery = True Then
UniQuery1.Open
Else
UniQuery1.ExecSQL;
LabelOK_.Visible:=True
Except
On E:Exception Do
Begin
LabelKO_.Visible:=True;
Memo2.Text:=e.Message;
End;
End;
End; |
Lorsque j'exécute les requêtes suivantes (Donc le contenu de Memo1 dans le code ci-dessus) - (Les sauts de lignes et les majuscule sont importants)
Code:
update egammes set validation = 'False' where validation is null
ou
Code:
1 2
| UPDATE EGAMMES SET VALIDATION = 'False'
WHERE VALIDATION IS NULL |
Tout fonctionne bien.
Par contre, lorsque j'exécute la requête suivante
Code:
UPDATE EGAMMES SET VALIDATION = 'False' WHERE VALIDATION IS NULL
Qui me semble identique en type. Seuls les sauts de ligne ou la casse changent. Le système me retourne le message suivant :
Citation:
L'instruction a été arrêtée.
Les données de chaîne ou binaires seront tronquées.
J'avoue que je ne comprend pas du tout ce fonctionnement.
Quelqu'un a-t-il une idée de ce qu'il se passe?
Merci d'avance.
¨
Noémie