Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQL Server Compact Datenbank über ADO nicht editierbar (https://www.delphipraxis.net/144398-sql-server-compact-datenbank-ueber-ado-nicht-editierbar.html)

Stevie 7. Dez 2009 06:29

Datenbank: SQL Server Compact • Version: 3.5 • Zugriff über: ADO

SQL Server Compact Datenbank über ADO nicht editierbar
 
Liste der Anhänge anzeigen (Anzahl: 1)
Moin,

ich habe das Problem, dass ich die Datensätze nicht im Grid bearbeiten kann. Standardmäßig werden mir die Felder im Dataset auch als ReadOnly markiert, wenn ich sie über den Field Editor erstelle. Setze ich sie dann auf ReadOnly := False kann ich die Daten zwar im Grid editieren, beim verlassen des Records gehen die Änderungen allerdings verloren.

Lösche ich einen Datensatz, versuche einen neuen einzufügen oder mache einen Refresh, kommt folgende EOleException: "Insufficient base table information for updating or refreshing".

Die Tabellen haben alle einen PK, die DB ist nicht auf ReadOnly gestellt oder anderweitig geöffnet. Führe ich die Aktionen, die ich vorher im Grid durchführen wollte als SQL über ein ExecSQL aus, geht alles.

Test-Projekt und DB sind angefügt. Wenn ihr die ADOConnection in der IDE auf Active stellt, ändert vorher den Mode auf cmRead oder so, sonst knallts, weil der Enum nicht mit ReadWrite|ShareDenyNone zurecht kommt.

Andere DB Komponenten kommen übrigens nicht in Frage, bevor das jemand vorschlägt.

mkinzler 7. Dez 2009 06:39

Re: SQL Server Compact Datenbank über ADO nicht editierbar
 
Ist die Datenmenge updatable?

Stevie 7. Dez 2009 06:44

Re: SQL Server Compact Datenbank über ADO nicht editierbar
 
Ja, CanModify liefert True zurück

Stevie 9. Dez 2009 05:40

Re: SQL Server Compact Datenbank über ADO nicht editierbar
 
Echt keiner ne Ahnung? :cry:

Sascha Object 9. Dez 2009 12:18

Re: SQL Server Compact Datenbank über ADO nicht editierbar
 
Moin,

das Problem hatte ich auch.
Du kannst die Daten so nicht ändern.
Es geht nur mit einem Update-SQL oder einem Insert-SQL.
Die Datenmenge die du leist ist immer read-only.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:32 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz