![]() |
Datenbank: InterBase • Version: 2009 • Zugriff über: dbExpress
InterBase 2009, UTF8 und dbExpress
Hallo,
hat hier eventuell schon jemand Erfahrung mit dieser Kombination (InterBase 2009, UTF8 und dbExpress)? Es gibt beim Ausführen eines Updates über diese Komponenten SQLConnection -> SQLQuery -> DataSetProvider -> ClientDataSet -> DataSource -> DBEdit den Fehler "Datensatz nicht gefunden oder von einem anderen Benutzer geändert" Ein direktes Update über eine TSQLQuery dagegen funktioniert. Der Delphi - Code besteht aus zwei Button-OnClick Handlern
Delphi-Quellcode:
und
ClientDataSet1.Open;
ClientDataSet1.Edit;
Delphi-Quellcode:
sowie dem OnReconcile Handler
ClientDataSet1.Post;
ClientDataSet1.ApplyUpdates(-1);
Delphi-Quellcode:
Update: anscheinend bin ich auf einen alten Bug gestossen, der in Delphi 2010 Update 4 endlich gefixt ist:
procedure TMainForm.ClientDataSet1ReconcileError(DataSet: TCustomClientDataSet;
E: EReconcileError; UpdateKind: TUpdateKind; var Action: TReconcileAction); begin ShowMessage('Reconcile ' + E.Message); end; ![]() Zitat:
Nachtrag: Statt zwei Quotes
Delphi-Quellcode:
für InterBase mit 4 Apostroph:
BindText := '(' + BindTextField + ' is null or ' + BindTextField + ' = "") and'; // <-- Quotes you use will depend on your SQL server.
Delphi-Quellcode:
BindText := '(' + BindTextField + ' is null or ' + BindTextField + ' = '''') and'; // <-- Quotes you use will depend on your SQL server.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz