Schlagwort: ADS

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 exclusive table access for table maintenance. Unfortunately there’s nothing built into the server. Calling the function database() in SQL just returns the connection path from the client and not the server path. Weiterlesen

Insert Only

I’m currently attending the online lecture ‚in memory computing‘ by 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 the records get updated during lifetime, there should be no performance penalty being expected.

I was very curious if this is possible with ADS aswell and implemented it using triggers. Weiterlesen

German Soundex „Kölner Phonetik“ SQL implementation

To all my english fellows: Since the topic discussed in this article is for the german language only I’ll post it in german language. Sorry.

Zur Ähnlichkeitssuche von Zeichenketten existieren mehrere Verfahren. Das bekannteste ist wohl Soundex, welches unter anderem auch im Advantage Database Server als Funktion implementiert ist (Online-Hilfe in der Advantage Devzone). Ein weiteres Verfahren wäre die Distanz (zB Levenstein-Distanz) zwischen zwei Zeichenketten zu messen, um so eine Ähnlichkeit festzustellen. Beide Verfahren sind aber für die deutsche Sprache wenig geeignet: Soundex ist für englisch optimiert, Levenstein würde zwei so unterschiedlich klingende Worte wie „Tier“ und „Tor“ als 2 angeben, was quasi einer Übereinstimmung entspricht.
Bereits 1969 veröffentlichte Hans Joachim Postel die „Kölner Phonetik“. Weiterlesen

Connecting a TAdsConnection Component using a connection string

The Advantage client Engine 10.1 introduced new API calls. One of them, AdsConnect101, can connect to a database using a connection string rather than setting the connection options one by one.

UNSIGNED32 AdsConnect101(
  UNSIGNED8 *pucConnectString, 
  ADSHANDLE *phConnectOptions,
  ADSHANDLE *phConnect);

TAdsConnection is able to hook into such a connection, either by setting the ConnectionHandle (TAdsConnection.SetHandle) or by creating a new component based on that ConnectionHandle (TAdsConnection.CreateWithHandle, TAdsConnection.CreateFromHandle). Weiterlesen

© 2024 Joachim Dürr

Theme von Anders NorénHoch ↑