Re: stupid question
Posted in 1995
>From: h3id1@carson.informix.com (Heidi) >Subject: stupid question >Date: 22 Jan 1995 09:55:22 GMT >X-Informix-List-Id: <news.11113> > >I am really, really new with database and am learning it. >There are some things I am still confused about. >Can someone please shed a light on me? >Ok, here we go: > >1. What is the difference between isql and r4gl? > Do they interact with each other when run, or what?? ISQL is intended to be a tool which end-users can use to manipulate databases. It provides screen forms and reports and a menuing facility and access to SQL. R4GL is a name which could represent either of two things. It could be the I4GL-RDS (Informix-4GL Rapid Development System) which is a programming language with various compilers and an interpreter to run the programs. It is not particularly intended for end-users; it is intended for use by software developers. Alternatively, R4GL could refer to the programmer's environment which is provided with I4GL-RDS. This is somewhat similar to the ISQL program in that it provides interactive access to the principle compilers (p-code and forms) and also provides a database which allows the programmer to record how to build programs. The two programs do not interact with each other when run, except indirectly through the database. >2. Why do they need a temporary directory? What is it for? Sometimes, the products need to create intermediate files. For example, if there is an error in a form when it is compiled, both ISQL and R4GL (the program) will allow you to edit the mistakes using a temporary file. Also, sorts caused by ORDER BY or GROUP BY clauses in SELECT statements can require disk space, and this generally is the space indicated by the DBTEMP environment variable. (Nit-picking details of engines and versions are omitted because this is an answer for a novice user.) >3. What actually happens to the database when a program runs? > Will it be that only certain tables are loaded, or everything > is loaded into memory? Under all practical circumstances, only the parts of the database that are referred to are loaded into memory. This will mean selected rows from selected tables. There are many things which can happen to the database when a program runs. The details depend on what the program does. Essentially, the program will open the database, verify that the tables and columns being accessed exist, and will collect data from the database for use by the application, and will update the database with revised information when the program requests it. These changes can be made irrevokably if the database has no transactions or once they are committed using COMMIT WORK; they are revokable (undoable) if the database has transactions and the data has not been committed yet. >I have the book INFORMIX-4GL by Example, but I can't find any information >about those questions That book explains how to use I4GL and assumes you have a working knowledge of how databases work. You should consider reading one of the books by CJ Date (either Introduction to Database Systems, 6th Edn, or Database: A Primer, I suggest). Also, consider looking at the various manuals on SE and OnLine. However, these too tend to assume quite a lot of basic knowledge. >(well, ok, it's not stupid question, but stupid questionS ...:) > >Thank you for any reply > >The Bewildered heidi Jonathan Leffler (johnl@informix.com) #include <disclaimer.h>