I was recalling SQL89 the other day, and wondered if anyone here is familiar with how it worked.
For example, I'm wondering if it worked over client-server connections. Did it send the entire SELECT operation to the server to evaluate and process? Or did it transform the SQL into some sort of ABL program that ran predominently on the client side of things?
Given that Progress is currently spending lots of time on ssj, I'm curious to know if they already had already done some of this work back in the days of SQL89. There aren't very many KB articles that describe SQL89, for better or worse.
For example, here one of the few articles:
https://knowledgebase.progress.com/articles/Article/P4952
It has a thorough discussion of the performance differences between SQL89 and SQL92.
SQL-89 was executed like a FOR EACH by the client, so, no, the join was not resolved on the server. This is the first time we are addressing server-side joins from ABL clients.
>> This is the first time we are addressing server-side joins from ABL clients.
OK, that's what I thought. I had never tried client-server back in those days, so I thought I'd ask.
The 4GL compiler also compiler the SQL-89 statements. That is why you can mix 4GL and SQL-89. The SQL statements are compiler into r-code and then executed in the usual way by the 4GL runtime. A few of the r-code operators are used only by SQL-89.=