Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Paradox Database

by coolmichael (Deacon)
on Feb 08, 2001 at 00:06 UTC ( #57032=perlquestion: print w/ replies, xml ) Need Help??
coolmichael has asked for the wisdom of the Perl Monks concerning the following question:

I have a big nasty, complex paradox database (it's kinda scary. why anyone chose paradox... anyway...) and I need to do some perl on it. There doesn't seem to be any Paradox modules here on PM, and I didn't find any on CPAN. Any suggestions?

Comment on Paradox Database
Re: Paradox Database
by Yohimbe (Pilgrim) on Feb 08, 2001 at 00:32 UTC
    Three directions occur: DBD::ODBC,
    Perl driving OLE interaction, or
    (ugliest) Dumping to CSV and DBD::CSV

    --
    Jay "Yohimbe" Thorne, alpha geek for UserFriendly
      Hmmm... I don't know anything about ODBC, or OLE. The database is used every day and gets updated every day. I was hoping to upload the database to the webserver everyday, and have cgi scripts that interact with it.

      I wish I had some sort of database training, then it would probably be a lot easier. I'm just a university dropout who manages a bookstore. Our database is in Pardox. I want to let people search it from the web. Can't afford a web guru...

        If you go the ODBC route, via either Win32::ODBC or some other module:

        Corel has info here on doing the generic setup of ODBC drivers for Paradox.

        Beyond that, you'll need someone that knows a bit of perl, a bit of sql, and a bit of web authoring.

        If this is all too much, you may want to upgrade to Paradox Version 9, which has some simplistic database publishing to the web built-in to the product.

        ODBC when you are not using Perl really isn't that bad. If you are running Windows then go to Control Panel/ODBC Data Sources and see if you have any Paradox ODBC drivers installed. If not then go to Microsoft's web site and download the Jet engine which should install the Paradox ODBC drivers.

        Once the Paradox ODBC drivers are installed then you can point and click to set up your Paradox file as an ODBC data source. This second part should be self-explanatory once you are within the Control Panel/ODBC Data Sources screen.

        Then you will need to begin to work with Perl's ODBC modules, which I have never used.

        I would say that even if you are a newbie to ODBC you should be able to install the ODBC drivers for Paradox and the Paradox data source. It might take you an afternoon if there are unexpected problems.

        Microsoft's Jet engine will probably install properly on your computer without you modifying any defaults. "All of life is a narrow bridge. The important part is not to be afraid." -- R. Nachman

OT - Re: Paradox Database
by footpad (Monsignor) on Feb 08, 2001 at 10:24 UTC
    Warning: Politics are indirectly revealed in the following. MS-supporters are kindly invited to view this link:

    Not to turn this into PdoxMonks; but, I would like to offer some points to ponder based on the responses so far:

    • You're right; there aren't any modules for Paradox. Part of this is due to the fact that *Borland* still owns the rights to BDE and refuses to extend it. They also are playing games with Corel with the source (e.g. "How much can we milk them for this?") There *may* be a DBD::BDE::Paradox driver submitted to CPAN in the next 12-18 months, but it ain't gonna happen soon. If ever. (Read this as saying I could really use some help on this.)

    • As far as why anyone would choose Paradox, well, I won't go there. Suffice to say that there are very technical and valid reasons for choosing it over the other big name *local* database format in town. Interested? /msg me privately with your email; we'll take it offline.

    • Yohimbe has identified your two major strategies: either export your tables (or query results) to CSV and then import those using BDB::CSV *or* create a custom upload file using ObjectPAL's textStream methods, an approach I happen to prefer. For example, I have a Paradox system that runs a periodic process to publish Paradox data into static HTML pages *and* auto-uploads those to a web server. It ain't rocket science. HTML is just tagged text.

    • I suggest that you consider the corel.wpoffice.paradox-web newsgroup currently hosted on cnews.corel.ca. While you'll confuse the heck out of them (save one) when you post Perl related questions, you will run into a group of earnest and well-meaning folks trying to do the best they can with the tools available. They've done good work and if you harsh them (he said, extending adamantine claws), I will come down on you, tho' you may not realize it.

      They will tell you about CWS and how it can be used to provided direct access to Paradox using the tools Corel has provided. Listen carefully, smile nicely, and read between the HTTP lines. CWS is lame, but an experienced Apache tech should be able to figure out what makes the Windows-based BDE work under WINE (or, for the OS challenged, Windows itself)....and that is the key. You may be able to use ODBC, but the best *ahem* access to Paradox tables comes through BDE.

    • kschwab provices a decent enough link, but it's not *enough*. Again, if you have troubles with Corel's support, please /msg me. I canna' promise miracles, but I know an answer or three.

    • Sierra is mostly right. You *should* have Paradox 9.0, but perhaps not for obvious reasons. Paradox 9 and/or WPO2K/Pro ships with Merant's (TCFKA Intersolv) ODBC driver for Paradox. This is ***far*** superior to the one provided with MSO (*spit*, *ptui*). Merant has elected to charge through the nose for this; Corel provides it free with the Developer's Edition or the Pro version of the Suite. You do the math.

    • If you insist on doing the MS ODBC drivers, well, heaven help you. At the very least, make sure you've got MDAC 2.6 installed and BDE 5.11. Stuck? Let me know privately.

    • Paradox isn't dead and resistance is not futile.

    This is a product I have more than a passing familiarity with. 'Nuff said.

    --f
Re: Paradox Database
by coolmichael (Deacon) on Mar 15, 2001 at 23:28 UTC

    Ok. I've been thinking about this long and hard. The plan is to do the following once a night (at midnight, when it's likely that nobody will be using the database):

    1. On the local computer, use Perl and ODBC to copy the data out of the four tables in the database and export to CSV
    2. Compress the CSV file with Compress::Bzip2 (if it exists. I haven't looked yet)
    3. Upload the file to the web server with FTP.
    4. use telnet to connect to the webserver and decompress the file.

    I'll write some scripts to query the database on the web server with DBD::CSV. Unfortunately, the people who run the server won't install SSH, or MySQL or Postgresql. It's really getting quite frustrating. I think I'll just start my own web server in my office.

    What do the monks think? I know that telnet and ftp aren't the best protocols to use, but I don't have much choice. The webserver is in another room in the same building, so I'm not too worried about passwords.

Re: Paradox Database
by jcc (Sexton) on Apr 27, 2006 at 20:38 UTC
    Check out pxlib/pxview on sourceforge. I have enountered similar requirements and will hopefully be using pxview to meet my needs.
    I'm also hoping someone out there is adapting it into a module.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://57032]
Approved by root
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (6)
As of 2014-07-25 03:53 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (167 votes), past polls