Hello gurus!
I'm also looking for an open-source database replacement for Progress
database.
I, too, have been looking at MySQL and PostgreSQL and I'd appreciate more
inputs on what differentiates the two, and how each can address my database
requirements and deployments.
The client machines are Pentium 120 64MB RAM. The servers are Compaq Proliant
Pentium II 450 128MB RAM. I'd use Windows 95/98 for the clients while the
servers will run Linux.
I'd like to create a GUI application using Progress RAD tools. This
application will be point-of-sale counter front-ends, the ones cashiers will
use. The application will communicate with the database on the Linux server
through ODBC.
1. Does MySQL and PostgreSQL support table-locking and record-locking? This
feature is important in multi-user record resolution.
With Progress database, I code these statements if I simply want to search and
read the record, and display the result onscreen:
FIND record WHERE criteria = "" NO-LOCK, NO-ERROR.
IF NOT AVAILABLE record THEN
DO:
MESSAGE "Record not found" VIEW-AS ALERT-BOX INFO.
RETURN NO-APPLY.
END.
ELSE
DISPLAY record WITH FRAME frame-name.
If I want to lock the record and update the desired fields. It's as simple as
changing the NO-LOCK to EXCLUSIVE-LOCK:
DO:
FIND record WHERE criteria = "" EXCLUSIVE-LOCK, NO-ERROR.
UPDATE record/fields.
DISPLAY record WITH FRAME frame-name.
END.
Are there similar, simple, equivalent SQL queries like this in MySQL or
PostgreSQL? How is table-locking and record-locking implemented? What does
MySQL mean by atomic transactions? Does MySQL and PostgreSQL support
transactions (in database parlance)?
3. Can a MySQL or PostgreSQL database grow from 500kb to gigabytes without any
administrative conversion and maintenance? Progress database is a
deploy-once-then-forget type of database. It grows to any size without
needing any administrative tweaking at all.
4. Does MySQL and PostgreSQL support database triggers? Stored procedures?
5. Does MySQL and PostgreSQL enable before-imaging and after-imaging? Are
there any equivalent technologies that ensures transaction/database integrity
in these databases?
This is also a very important feature. In Progress, if the machine
accidentally shuts down and the client has open transactions, Progress will
automatically roll-back the uncommitted transactions upon startup through
before-imaging. In this way, database write/update integrity is taken cared
off automatically without scripting lengthy resolution commands.
6. Can I issue SQL commands through ODBC in the client GUI to MySQL or
PostgreSQL Linux databases, so that the client can dynamically open and close
database connections?
7. Does MySQL and PostgreSQL support multiple database connections?
8. Can MySQL and PostgreSQL store BLOBS (binary, large objects)?
Thank you very much in advance.
--
mikol
"There is no concept more closer to intellectual emancipation than free
software. Freedom to responsibly code and share in its most free and pure
form." -- Floyd Robinson, September 24, 2002
--
mikol
"There is no concept more closer to intellectual emancipation than free
software. Freedom to responsibly code and share in its most free and pure
form." -- Floyd Robinson, September 24, 2002
_
Philippine Linux Users Group. Web site and archives at http://plug.linux.org.ph
To leave: send "unsubscribe" in the body to [EMAIL PROTECTED]
Fully Searchable Archives With Friendly Web Interface at http://marc.free.net.ph
To subscribe to the Linux Newbies' List: send "subscribe" in the body to
[EMAIL PROTECTED]