Discussion:
Migrating to pgSQL4RB
Maximilian Tyrtania
2007-08-07 12:23:23 UTC
Permalink
Hi there,

This is my 1st post to this list, so please bare with me.
We have a big inhouse application that currently uses a non PGSQL backend,
and we are considering to migrate to Postgres. Now, the problem is that my
client app is a pretty big RB application that uses the conventional
approach to read data from a database like this:

Dim RS as RecordSet
Rs=SomeDBConnection.SQLSelect(SomeSQL)

While NOT Rs.eof
//do something
Rs.movenext
Wend

Or :

SomeDBConnection.Execute("Insert ...")

If SomeDB.Connection error then...

My question is basically if there is a painless way to make that kind of
code "pgSQL4RB-compliant", without using any fancy bindings.

Tia,

Maximilian Tyrtania | ***@fischerAppelt.de
fischerAppelt Kommunikation GmbH
Friedichstr. 149 | D-10117 Berlin | Germany
Tel. ++49-30-726146-728 | Fax ++49-30-726146-710
www.fischerAppelt.de
---------------------------------------------------------------------------
Sitz der Gesellschaft: Hamburg
Standorte: Hamburg, Berlin, Düsseldorf, Frankfurt, München, Stuttgart
Die Gesellschaft ist Teil des Everpublic Networks
Handelsregister: Amtsgericht Hamburg, HRB 49259
Geschäftsführer: Andreas Fischer-Appelt, Bernhard Fischer-Appelt

+++ fischerAppelt macht Fernsehen: www.fischerappelt-tvmedia.com +++
Aliacta Support
2007-08-07 18:54:19 UTC
Permalink
Hi Maximilian,

Personally I never converted from the RBDB API to pgSQL4RB
(obviously) but from what I've heard people say they just replace the
code you mention with pgSQL4RB code and claim it isn't much work at
all. They typically do this in only one or two days.

(The error code however you'll have to put in the cache's error event.)

Hope this helps,

Marc
Post by Maximilian Tyrtania
Hi there,
This is my 1st post to this list, so please bare with me.
We have a big inhouse application that currently uses a non PGSQL backend,
and we are considering to migrate to Postgres. Now, the problem is that my
client app is a pretty big RB application that uses the conventional
Dim RS as RecordSet
Rs=SomeDBConnection.SQLSelect(SomeSQL)
While NOT Rs.eof
//do something
Rs.movenext
Wend
SomeDBConnection.Execute("Insert ...")
If SomeDB.Connection error then...
My question is basically if there is a painless way to make that kind of
code "pgSQL4RB-compliant", without using any fancy bindings.
Tia,
fischerAppelt Kommunikation GmbH
Friedichstr. 149 | D-10117 Berlin | Germany
Tel. ++49-30-726146-728 | Fax ++49-30-726146-710
www.fischerAppelt.de
----------------------------------------------------------------------
-----
Sitz der Gesellschaft: Hamburg
Standorte: Hamburg, Berlin, Düsseldorf, Frankfurt, München, Stuttgart
Die Gesellschaft ist Teil des Everpublic Networks
Handelsregister: Amtsgericht Hamburg, HRB 49259
Geschäftsführer: Andreas Fischer-Appelt, Bernhard Fischer-Appelt
+++ fischerAppelt macht Fernsehen: www.fischerappelt-tvmedia.com +++
_______________________________________________
Postgresql mailing list
http://aliacta.com/mailman/listinfo/postgresql_aliacta.com
Maximilian Tyrtania
2007-08-08 09:54:25 UTC
Permalink
Hi Marc,

Thanks for this. I think I'll have to do some more playing around to get a
clearer idea of how to achieve this.

One more thing: My management tries to talk me into using MySQL. Hmm.
Personally I don't have a problem with MySQL, but I'd still prefer to go the
PstgreSQL/pgSQL4RB-path.

Is there any amunition against that route you guys could supply me with? I
looked at the MySQL-plugin bug-reports in Realsoftware's bugbase and found
some things I can use (e.g. no thread support and the usage of stored
procedures seems not reliable at best) but, if you guys happen to know
something else I'd be pleased to know about it. As I am dealing with an
inhouse application, I think am entitled to use MySQL for free, so that
won't get me anywhere.

Best,

Maximilian Tyrtania | IT-Entwickler
***@fischerAppelt.de
fischerAppelt Kommunikation GmbH
Friedichstr. 149 | D-10117 Berlin | Germany
Tel. ++49-30-726146-728 | Fax ++49-30-726146-710
www.fischerAppelt.de
---------------------------------------------------------------------------
Sitz der Gesellschaft: Hamburg
Standorte: Hamburg, Berlin, Düsseldorf, Frankfurt, München, Stuttgart
Die Gesellschaft ist Teil des Everpublic Networks
Handelsregister: Amtsgericht Hamburg, HRB 49259
Geschäftsführer: Andreas Fischer-Appelt, Bernhard Fischer-Appelt

+++ fischerAppelt macht Fernsehen: www.fischerappelt-tvmedia.com +++
Post by Aliacta Support
Personally I never converted from the RBDB API to pgSQL4RB
(obviously) but from what I've heard people say they just replace the
code you mention with pgSQL4RB code and claim it isn't much work at
all. They typically do this in only one or two days.
(The error code however you'll have to put in the cache's error event.)
Hope this helps,
Marc
Post by Maximilian Tyrtania
Hi there,
This is my 1st post to this list, so please bare with me.
We have a big inhouse application that currently uses a non PGSQL backend,
and we are considering to migrate to Postgres. Now, the problem is that my
client app is a pretty big RB application that uses the conventional
Dim RS as RecordSet
Rs=SomeDBConnection.SQLSelect(SomeSQL)
While NOT Rs.eof
//do something
Rs.movenext
Wend
SomeDBConnection.Execute("Insert ...")
If SomeDB.Connection error then...
My question is basically if there is a painless way to make that kind of
code "pgSQL4RB-compliant", without using any fancy bindings.
Tia,
fischerAppelt Kommunikation GmbH
Friedichstr. 149 | D-10117 Berlin | Germany
Tel. ++49-30-726146-728 | Fax ++49-30-726146-710
www.fischerAppelt.de
----------------------------------------------------------------------
-----
Sitz der Gesellschaft: Hamburg
Standorte: Hamburg, Berlin, Düsseldorf, Frankfurt, München, Stuttgart
Die Gesellschaft ist Teil des Everpublic Networks
Handelsregister: Amtsgericht Hamburg, HRB 49259
Geschäftsführer: Andreas Fischer-Appelt, Bernhard Fischer-Appelt
+++ fischerAppelt macht Fernsehen: www.fischerappelt-tvmedia.com +++
_______________________________________________
Postgresql mailing list
http://aliacta.com/mailman/listinfo/postgresql_aliacta.com
_______________________________________________
Postgresql mailing list
http://aliacta.com/mailman/listinfo/postgresql_aliacta.com
Aliacta Support
2007-08-10 09:24:16 UTC
Permalink
Post by Maximilian Tyrtania
One more thing: My management tries to talk me into using MySQL. Hmm.
Personally I don't have a problem with MySQL, but I'd still prefer to go the
PstgreSQL/pgSQL4RB-path.
Is there any amunition against that route you guys could supply me with? I
looked at the MySQL-plugin bug-reports in Realsoftware's bugbase and found
some things I can use (e.g. no thread support and the usage of stored
procedures seems not reliable at best) but, if you guys happen to know
something else I'd be pleased to know about it. As I am dealing with an
inhouse application, I think am entitled to use MySQL for free, so that
won't get me anywhere.
I haven't followed the development of the RB MySQL plugin recently
but last time I heard it was still only for Mac OS X, don't know if
this changed.

You should reread the MySQL license. My interpretation of it is that
you'd have to pay their license fee of $4k or something like that--
don't know their current pricing either--since you're going to deploy
it in a commercial setting.

There are many reasons why PostgreSQL is the prefered database for
vital activities, the main one would be stability. It's rock solid,
which can't be said from MySQL. MySQL crashes are frequent enough to
have shooed users away from it to PostgreSQL. PostgreSQL also has
way more features.

Both PostgreSQL and MySQL have good communities for when you need
support, but the PostgreSQL developers will participate for free in
the mailing lists while MySQL A.B. will try to sell you an $3k
support contract.

MySQL fans always claim they have the edge on speed, but "it's fast
because fsync is off by default, and MyISAM is not
transactional and doesn't support basic features like foreign keys.
That basically means it's fast because it ignores Boyd and Cobb. Guess
what? The same can be said of flat files." - Brandon Aiken

In short, you get these benefits over MySQL:

- stability!
- features
- free (as in free beer)
- free support direct from the developers

and the disadvantages over MySQL? None!

- It's not slower.
- It is less wide spread than MySQL, but that doesn't matter for an
in-house application.

In my humble opinion there's no contest between the two. PostgreSQL
wins hands down.

If you Google for "MySQL PostgreSQL comparison" you'll find many far
more detailed reports, but it always boils down to the key elements I
mentioned above.

Good Luck,

Marc
Maximilian Tyrtania
2007-08-15 09:07:15 UTC
Permalink
Hi Mark,
Post by Aliacta Support
Post by Maximilian Tyrtania
One more thing: My management tries to talk me into using MySQL. Hmm.
Personally I don't have a problem with MySQL, but I'd still prefer to go the
PstgreSQL/pgSQL4RB-path.
Is there any amunition against that route you guys could supply me with? I
looked at the MySQL-plugin bug-reports in Realsoftware's bugbase and found
some things I can use (e.g. no thread support and the usage of stored
procedures seems not reliable at best) but, if you guys happen to know
something else I'd be pleased to know about it. As I am dealing with an
inhouse application, I think am entitled to use MySQL for free, so that
won't get me anywhere.
I haven't followed the development of the RB MySQL plugin recently
but last time I heard it was still only for Mac OS X, don't know if
this changed.
It has. It does run under win32 now.
Post by Aliacta Support
You should reread the MySQL license. My interpretation of it is that
you'd have to pay their license fee of $4k or something like that--
don't know their current pricing either--since you're going to deploy
it in a commercial setting.
I don't think it depends on if you use it in a "commercial setting" or not
as long as it's for inhouse-use only. Maybe I'm wrong, but I'll read up on
it later.
Post by Aliacta Support
There are many reasons why PostgreSQL is the prefered database for
vital activities, the main one would be stability. It's rock solid,
which can't be said from MySQL. MySQL crashes are frequent enough to
have shooed users away from it to PostgreSQL. PostgreSQL also has
way more features.
Both PostgreSQL and MySQL have good communities for when you need
support, but the PostgreSQL developers will participate for free in
the mailing lists while MySQL A.B. will try to sell you an $3k
support contract.
MySQL fans always claim they have the edge on speed, but "it's fast
because fsync is off by default, and MyISAM is not
transactional and doesn't support basic features like foreign keys.
That basically means it's fast because it ignores Boyd and Cobb. Guess
what? The same can be said of flat files." - Brandon Aiken
- stability!
- features
- free (as in free beer)
- free support direct from the developers
and the disadvantages over MySQL? None!
- It's not slower.
- It is less wide spread than MySQL, but that doesn't matter for an
in-house application.
In my humble opinion there's no contest between the two. PostgreSQL
wins hands down.
If you Google for "MySQL PostgreSQL comparison" you'll find many far
more detailed reports, but it always boils down to the key elements I
mentioned above.
Thanks! I think I have enough to talk them into PostgreSQL.


Maximilian Tyrtania | IT-Entwickler
***@fischerAppelt.de
fischerAppelt Kommunikation GmbH
Friedichstr. 149 | D-10117 Berlin | Germany
Tel. ++49-30-726146-728 | Fax ++49-30-726146-710
www.fischerAppelt.de
---------------------------------------------------------------------------
Sitz der Gesellschaft: Hamburg
Standorte: Hamburg, Berlin, Düsseldorf, Frankfurt, München, Stuttgart
Die Gesellschaft ist Teil des Everpublic Networks
Handelsregister: Amtsgericht Hamburg, HRB 49259
Geschäftsführer: Andreas Fischer-Appelt, Bernhard Fischer-Appelt

+++ fischerAppelt macht Fernsehen: www.fischerappelt-tvmedia.com +++
Loading...