Im letzten Beitrag (DSGVO: Eingabekontrolle) wurde das Thema Löschen von personenbezogenen Daten kurz angerissen. Dieses Mal möchte ich dies etwas weiter vertiefen. Die DSGVO zwingt zur Datensparsamkeit. Personenbezogene Daten dürfen nur gespeichert werden, wenn ein so genannter Rechtsgrund vorliegt. Dieser
DSGVO: Eingabekontrolle
Ein weiterer wichtiger Punkt ist die Eingabekontrolle. Dieser untergliedert sich in mehrere Teilaufgaben. Zum einen sollten wir festhalten, woher die Daten kommen und wer diese eingegeben hat. Bei der Eingabe ist darauf zu achten, nicht zu viele Daten zu fordern
DSGVO: Zugangs- und Zugriffskontrolle
Ein wichtiges Thema bei Datenbankanwendungen ist sicherlich, wie die Daten so geschützt werden können, dass Unberechtigte keine Kenntnis davon erlangen. Ich möchte hier ein Beispiel aus meiner Praxis aufzeigen. Mein Lieblings-Datenbank Managementsystem Advantage Database Server (ADS) kommt historisch aus dem
DSGVO-Regeln in einer Daten-getriebenen Anwendung
Angeregt durch lebhafte Diskussionen in den Entwicklerforen zur europäischen Datenschutzgrundverordnung (DSGVO) möchte ich in den nächsten Wochen eine lose Sammlung von Artikeln veröffentlichen, wie man die Anforderungen dieser Verordnung in einer Daten-getriebenen Applikation bzw. direkt auf der Datenbankebene umsetzen kann.
Delete Duplicated Records without having a Primary Key
During teaching a SQL class I was asked how to delete duplicated records from a table without having a primary key. Since they used Advantage Database Server, the answer was simple: Use the virtual column ‚ROWID‘ as primary key. For
Drop all indexes for a given table
There was a question in the german Xbase++ Forum how to drop all indexes for a given table in ADS if the table is part of a data dictionary (just deleting the index file won’t work in that case). The
Using GUID datatype, multi-row inserts and GROUP_CONCAT
For a true unique primary key in a distributed environment, AUTOINC does not work well. So I always recommended to use either an AUTOINC combined with some kind of SiteId, or to use a GUID (global unique identifier). Prior to
Get physical data path in ADS
Some server management function in Advantage Database Server require the physical file name of the table including the local path. One example could be to get all users of a specific table so you can disconnect them if you require
Insert Only
I’m currently attending the online lecture ‚in memory computing‘ by http://openhpi.com. One of the founders of SAP, Hasso Plattner, stated that they use insert only approach to keep a history of the record in the table. Since only ~10% of
Load CSV files into Advantage
Recently there has been a posting in the Advantage newsgroups (http://devzone.advantagedatabase.com/forum/questions/2339/any-similar-command-with-mysql-load-command-in-ads) that inspired me to write this blog post. A user asked on how he could load from a text file.