Scott Stansbury wrote:
> I'm trying to connect to a SQL Server 2008 instance from a CentOS5 box:
> 
> unixODBC:   2.2.14
> FreeTDS:    0.82
> Easysoft:   odbc-sqlserver-1.1.4-linux-x86 (trial for now)
> 
> osql/isql worked fine with both the FreeTDS and the Easysoft drivers.
> 
> Connecting to a SQL Server 2008 instance running on a Server 2008 box.
> 
> DBB::ODBC make test fails as follows:
> 
> [sc...@server1 DBD-ODBC-1.22-hGw3zr]$ make test
> PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e"
> "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
> t/01base.t .............. ok
> t/02simple.t ............ 1/65 #
> # Perl 5.8.8
> # osname=linux, osvers=2.6.18-53.el5, archname=i386-linux-thread-multi
> # Using DBI 1.609
> # Using DBD::ODBC 1.22
> # Using DBMS_NAME 'Microsoft SQL Server'
> # Using DBMS_VER '10.00.1600'
> # Using DRIVER_NAME 'libessqlsrv.so'
> # Using DRIVER_VER '01.01.0004'
> # odbc_has_unicode 0
> t/02simple.t ............ ok
> t/03dbatt.t ............. 3/29 #
> # N.B. Some drivers (postgres/cache) may return ODBC 2.0 column names
> for the SQLTables result-set e.g. TABLE_QUALIFIER instead of TABLE_CAT
> t/03dbatt.t ............. ok
> t/05meth.t .............. ok
> t/07bind.t .............. ok
> t/08bind2.t ............. ok
> t/09multi.t ............. ok
> t/10handler.t ........... ok
> t/12blob.t .............. ok
> t/20SqlServer.t ......... 3/65 # DBD::ODBC::db do failed:
> [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Statement(s)
> could not be prepared. (SQL-42000)
> # [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Must declare
> the scalar variable "@P1". (SQL-42000)
> # [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Line 1: Length
> or precision specification 0 is invalid. (SQL-42000) at t/20SqlServer.t
> line 78.
> 
> #   Failed test 'create PERL_DBD_TABLE1 and insert test data'
> #   at t/20SqlServer.t line 82.
> # DBD::ODBC::db do failed: [unixODBC][Easysoft][SQL Server Driver
> 10.0][SQL Server]Statement(s) could not be prepared. (SQL-42000)
> # [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Must declare
> the scalar variable "@P1". (SQL-42000)
> # [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Line 1: Length
> or precision specification 0 is invalid. (SQL-42000) at t/20SqlServer.t
> line 78.
> 
> #   Failed test 'create PERL_DBD_TABLE1 and insert test data'
> #   at t/20SqlServer.t line 82.
> t/20SqlServer.t ......... 65/65 # Looks like you failed 2 tests of 65.
> t/20SqlServer.t ......... Dubious, test returned 2 (wstat 512, 0x200)
> Failed 2/65 subtests
>         (less 6 skipped subtests: 57 okay)
> t/30Oracle.t ............ ok
> t/40UnicodeRoundTrip.t .. ok
> t/41Unicode.t ........... ok
> t/pod-coverage.t ........ 1/1 # Test::Pod::Coverage 1.04 required for
> testing POD coverage
> t/pod-coverage.t ........ ok
> t/pod.t ................. ok
> t/rt_38977.t ............ 2/11 DBD::ODBC::st execute failed:
> [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Statement(s)
> could not be prepared. (SQL-42000)
> [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Must declare the
> scalar variable "@P1". (SQL-42000)
> [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Line 1: Length
> or precision specification 0 is invalid. (SQL-42000) at t/rt_38977.t
> line 90.
> 
> #   Failed test 'execute insert'
> #   at t/rt_38977.t line 93.
> # Execute for insert into varchar(max) failed with DBD::ODBC::st execute
> failed: [unixODBC][Easysoft][SQL Server Driver 10.0][SQL
> Server]Statement(s) could not be prepared. (SQL-42000)
> # [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Must declare
> the scalar variable "@P1". (SQL-42000)
> # [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Line 1: Length
> or precision specification 0 is invalid. (SQL-42000) at t/rt_38977.t
> line 90.
> # Some SQL Server drivers such as the native client 09.00.1399 driver
> fail this test with a HY104, "Invalid precision error". You have driver
> libessqlsrv.so at version 01.01.0004. There is a free upgrade from
> Microsoft of the native client driver to 10.00.1600 which you will need
> if you intend to insert into varchar(max) columns.
> DBD::ODBC::st execute failed: [unixODBC][Easysoft][SQL Server Driver
> 10.0][SQL Server]Statement(s) could not be prepared. (SQL-42000)
> [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Must declare the
> scalar variable "@P1". (SQL-42000)
> [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Line 1: Length
> or precision specification 0 is invalid. (SQL-42000) at t/rt_38977.t
> line 127.
> DBD::ODBC::st execute failed: [unixODBC][Easysoft][SQL Server Driver
> 10.0][SQL Server]Statement(s) could not be prepared. (SQL-42000)
> [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Must declare the
> scalar variable "@P1". (SQL-42000)
> [unixODBC][Easysoft][SQL Server Driver 10.0][SQL Server]Line 1: Length
> or precision specification 0 is invalid. (SQL-42000) at t/rt_38977.t
> line 127.
> # Looks like you planned 11 tests but ran 10.
> # Looks like you failed 1 test of 10 run.
> # Looks like your test exited with 13 just after 10.
> t/rt_38977.t ............ Dubious, test returned 13 (wstat 3328, 0xd00)
> Failed 2/11 subtests
> t/rt_39841.t ............ ok
> t/rt_39897.t ............ ok
> t/rt_43384.t ............ ok
> t/rt_46597.t ............ ok
> t/rt_null_nvarchar.t .... ok
> 
> Test Summary Report
> -------------------
> t/20SqlServer.t       (Wstat: 512 Tests: 65 Failed: 2)
>   Failed tests:  7, 11
>   Non-zero exit status: 2
> t/rt_38977.t          (Wstat: 3328 Tests: 10 Failed: 1)
>   Failed test:  8
>   Non-zero exit status: 13
>   Parse errors: Bad plan.  You planned 11 tests but ran 10.
> Files=21, Tests=444, 30 wallclock secs ( 0.02 usr  0.28 sys +  0.35
> cusr  2.49 csys =  3.14 CPU)
> Result: FAIL
> Failed 2/21 test programs. 3/444 subtests failed.
> make: *** [test_dynamic] Error 255
> 
> Thanks for any insight...
> 
> Best regards,
> Scott...
> 
> 

These issues are fixed and I've put Scott in contact with the right
person to get an updated driver.

Martin
-- 
Martin J. Evans
Easysoft Limited
http://www.easysoft.com

Reply via email to