http://www.perlmonks.org?node_id=21793

toadi has asked for the wisdom of the Perl Monks concerning the following question:

Hi all,

By twist of fate I have to use a Microsoft SQL server

Well I installed DBI::ADO
Writing a cgi to write tabel-entry's to microsoftdb it complained about ole.pm.
perl -MCPAN -e shell
install Win32::OLE
but hell this file is corupt or something, it gave:

Looks good Writing Makefile for Win32::OLE Makefile:907: *** missing separator. Stop. /usr/bin/make -- NOT OK Running make test Oops, make had returned bad status Running make install Oops, make had returned bad status

Now I really need this module!! Where can I get another one? What is Wrong?
I don't know anymore??

2006-03-15 Retitled by planetscape, as per Monastery guidelines: one-word (or module-only) titles pose a hazard to site navigation
Original title: 'Win32::ole'

Replies are listed 'Best First'.
Re: Problems installing Win32::OLE on Unix
by httptech (Chaplain) on Jul 10, 2000 at 19:45 UTC
RE: Problems installing Win32::OLE on Unix
by barndoor (Pilgrim) on Jul 10, 2000 at 20:46 UTC
    One other option might be to try the DBD::Sybase module for DBI. The O'Reilly DBI book says that it provides some support to MS-SQL server. However it needs a Sybase client library. If you use Sybase's own you may need a SQL server patch so that Sybase clients can see your database. Otherwise there is apparently a FreeTDS library which is open source for connecting. However this is an Alpha version so I don't know how good it is. Apparently it works OK with DBD::Sybase apart from no ?-style placeholder support. Hope this helps.

      One thing to note about that is, that the Sybase drivers will only "work" with MS SQL Server 6.5 or lower. Microsoft finally saw the light with MS SQL Server 7.0 and threw out the Sybase code and rewrote it from scratch. Not that I've worked much with SQL Server 7, but still ...

        Pity it's Ms SQL 7.

        We're migrating from MS to *nix. I'm doing this step by step. First writing things in perl & php(they're using ASP). One thing is good there's ORCACLE!!! But they have oracle but use MS SQL(because it's easier). Off course they're only producing things and want it easy to produce things.
        But sorry I want to make things, but I also want to make them better !!

        --
        My opinions may have changed,
        but not the fact that I am right

Re: Problems installing Win32::OLE on Unix
by flymolo (Acolyte) on Jul 10, 2000 at 22:18 UTC
    You can look at DBI::ProxyServer.
    You can run a small script that runs on the NT DB server that make the requests sent to it by a DBD::Proxy client.
    I looked into doing it at one point but never had to so yymv.
RE: Problems installing Win32::OLE on Unix
by toadi (Chaplain) on Jul 10, 2000 at 19:11 UTC
    Well,
    Two Q's:
    -How can you update a post you have posted??
    Update: Found it !!

    -Seems OLE can only be used in Windoze ??? But how can I connect to Microsoft SQL server from a unix machine????

    Is this possobel???

    --
    My opinions may have changed,
    but not the fact that I am right

      I use DBD::ODBC to connect to MS SQL Server 7 from WINNT to WINNT.

      No problems here.

      However, as httptech said, you will have to get the ODBC driver for your platform.

      Here's one possible source:

      http://www.easysoft.com/products/main.phtml

      I really don't know how good this product is but a colleague of mine pointed me to it afew days ago.

      OpenRDA is a commercial product that maybe could solve your problem.
      Here are instructions (pretty old) on how to do it from Linux.
      Good luck.

      /brother t0mas
Re: Problems installing Win32::OLE on Unix
by toadi (Chaplain) on Jul 10, 2000 at 21:15 UTC
    So,
    What i really need is a ODBC-driver on the NT machine with the MS SQL-server

    install on the *nix machine where the cgi's are DBD::ODBC??
    (why can't I just use my old trusted Mysql...? The gods must be crazy)
    --
    My opinions may have changed,
    but not the fact that I am right