[freetds] RESULTS!!! Re: parameters missing in RC 64 Bits

Igor Chudov igor at chudov.com
Tue Apr 22 14:23:05 EDT 2008


Here are the test results with some interesting failures. 

First some print that managed to escape nohup, then nohup output. Look at "Error Setting Type" output.

:~/tmp/freetds/freetds-0.64 ==>(cd src/odbc/unittests && nohup make check)
nohup: ignoring input and appending output to `nohup.out'
*** glibc detected *** ./array_out: munmap_chunk(): invalid pointer: 0x000000000063c8b0 ***
======= Backtrace: =========
/lib/libc.so.6(cfree+0x1b6)[0x2adec89b8d46]
./array_out[0x4017a1]
./array_out[0x4018f1]
/lib/libc.so.6(__libc_start_main+0xf4)[0x2adec895f1c4]
./array_out[0x401229]
======= Memory map: ========
00400000-00403000 r-xp 00000000 08:01 12395622                           /home/smile/tmp/freetds/freetds-0.64/src/odbc/unittests/array_out
00602000-00604000 rw-p 00002000 08:01 12395622                           /home/smile/tmp/freetds/freetds-0.64/src/odbc/unittests/array_out
00604000-0064d000 rw-p 00604000 00:00 0                                  [heap]
2adec7e9c000-2adec7eb9000 r-xp 00000000 08:01 9666577                    /lib/ld-2.7.so
2adec7eb9000-2adec7ebc000 rw-p 2adec7eb9000 00:00 0 
2adec7ebc000-2adec7ebd000 rw-s 00000000 00:09 0                          /SYSV7901a38f (deleted)
2adec7ebd000-2adec7ebe000 rw-p 2adec7ebd000 00:00 0 
2adec7ebe000-2adec7ec5000 r--s 00000000 08:01 10397664                   /usr/lib/gconv/gconv-modules.cache
2adec80b9000-2adec80bb000 rw-p 0001d000 08:01 9666577                    /lib/ld-2.7.so
2adec80bb000-2adec8112000 r-xp 00000000 08:01 10402609                   /usr/lib/libodbc.so.1.0.0
2adec8112000-2adec8311000 ---p 00057000 08:01 10402609                   /usr/lib/libodbc.so.1.0.0
2adec8311000-2adec8319000 rw-p 00056000 08:01 10402609                   /usr/lib/libodbc.so.1.0.0
2adec8319000-2adec8320000 r-xp 00000000 08:01 10402599                   /usr/lib/libltdl.so.3.1.6
2adec8320000-2adec851f000 ---p 00007000 08:01 10402599                   /usr/lib/libltdl.so.3.1.6
2adec851f000-2adec8520000 rw-p 00006000 08:01 10402599                   /usr/lib/libltdl.so.3.1.6
2adec8520000-2adec8522000 r-xp 00000000 08:01 9666586                    /lib/libdl-2.7.so
2adec8522000-2adec8722000 ---p 00002000 08:01 9666586                    /lib/libdl-2.7.so
2adec8722000-2adec8724000 rw-p 00002000 08:01 9666586                    /lib/libdl-2.7.so
2adec8724000-2adec8725000 rw-p 2adec8724000 00:00 0 
2adec8725000-2adec873b000 r-xp 00000000 08:01 9666597                    /lib/libpthread-2.7.so
2adec873b000-2adec893b000 ---p 00016000 08:01 9666597                    /lib/libpthread-2.7.so
2adec893b000-2adec893d000 rw-p 00016000 08:01 9666597                    /lib/libpthread-2.7.so
2adec893d000-2adec8941000 rw-p 2adec893d000 00:00 0 
2adec8941000-2adec8a99000 r-xp 00000000 08:01 9666583                    /lib/libc-2.7.so
2adec8a99000-2adec8c99000 ---p 00158000 08:01 9666583                    /lib/libc-2.7.so
2adec8c99000-2adec8c9c000 r--p 00158000 08:01 9666583                    /lib/libc-2.7.so
2adec8c9c000-2adec8c9e000 rw-p 0015b000 08:01 9666583                    /lib/libc-2.7.so
2adec8c9e000-2adec8ca5000 rw-p 2adec8c9e000 00:00 0 
2adec8ca5000-2adec8cad000 r-xp 00000000 08:01 9666590                    /lib/libnss_compat-2.7.so
2adec8cad000-2adec8eac000 ---p 00008000 08:01 9666590                    /lib/libnss_compat-2.7.so
2adec8eac000-2adec8eae000 rw-p 00007000 08:01 9666590                    /lib/libnss_compat-2.7.so
2adec8eae000-2adec8ec4000 r-xp 00000000 08:01 9666589                    /lib/libnsl-2.7.so
2adec8ec4000-2adec90c3000 ---p 00016000 08:01 9666589                    /lib/libnsl-2.7.so
2adec90c3000-2adec90c5000 rw-p 00015000 08:01 9666589                    /lib/libnsl-2.7.so
2adec90c5000-2adec90c7000 rw-p 2adec90c5000 00:00 0 
2adec90c7000-2adec90d1000 r-xp 00000000 08:01 9666594                    /lib/libnss_nis-2.7.so
2adec90d1000-2adec92d0000 ---p 0000a000 08:01 9666594                    /lib/libnss_nis-2.7.so
2adec92d0000-2adec92d2000 rw-p 00009000 08:01 9666594                    /lib/libnss_nis-2.7.so
2adec92d2000-2adec92dc000 r-xp 00000000 08:01 9666592                    /lib/libnss_files-2.7.so
2adec92dc000-2adec94dc000 ---p 0000a000 08:01 9666592                    /lib/libnss_files-2.7.so
2adec94dc000-2adec94de000 rw-p 0000a000 08:01 9666592                    /lib/libnss_files-2.7.so
2adec94de000-2adec94e0000 r-xp 00000000 08:01 10398226                   /usr/lib/gconv/ISO8859-1.so
2adec94e0000-2adec96df000 ---p 00002000 08:01 10398226                   /usr/lib/gconv/ISO8859-1.so
2adec96df000-2adec96e1000 rw-p 00001000 08:01 10398226                   /usr/lib/gconv/ISO8859-1.so
2adec96e1000-2adec9729000 r-xp 00000000 08:01 12395833                   /home/smile/tmp/freetds/freetds-0.64/src/odbc/.libs/libtdsodbc.so.0.0.0
2adec9729000-2adec9928000 ---p 00048000 08:01 12395833                   /home/smile/tmp/freetds/freetds-0.64/src/odbc/.libs/libtdsodbc.so.0.0.0
2adec9928000-2adec992c000 rw-p 00047000 08:01 12395833                   /home/smile/tmp/freetds/freetds-0.64/src/odbc/.libs/libtdsodbc.so.0.0.0
2adec9932000-2adec993e000 r-xp 00000000 08:01 10402601                   /usr/lib/libodbcinst.so.1.0.0
2adec993e000-2adec9b3d000 ---p 0000c000 08:01 10402601                   /usr/lib/libodbcinst.so.1.0.0
2adec9b3d000-2adec9b3e000 rw-p 0000b000 08:01 10402601                   /usr/lib/libodbcinst.so.1.0.0
2adec9b44000-2adec9b48000 r-xp 00000000 08:01 9666591                    /lib/libnss_dns-2.7.so
2adec9b48000-2adec9d48000 ---p 00004000 08:01 9666591                    /lib/libnss_dns-2.7.so
2adec9d48000-2adec9d4a000 rw-p 00004000 08:01 9666591                    /lib/libnss_dns-2.7.so
2adec9d4a000-2adec9d5c000 r-xp 00000000 08:01 9666598                    /lib/libresolv-2.7.so
2adec9d5c000-2adec9f5c000 ---p 00012000 08:01 9666598                    /lib/libresolv-2.7.so
2adec9f5c000-2adec9f5e000 rw-p 00012000 08:01 9666598                    /lib/libresolv-2.7.so
2adec9f5e000-2adec9f60000 rw-p 2adec9f5e000 00:00 0 
2adec9f60000-2adec9f6d000 r-xp 00000000 08:01 9666576                    /lib/libgcc_s.so.1
2adec9f6d000-2adeca16d000 ---p 0000d000 08:01 9666576                    /lib/libgcc_s.so.1
2adeca16d000-2adeca16e000 rw-p 0000d000 08:01 9666576                    /lib/libgcc_s.so.1
7fffe2bf8000-7fffe2c0d000 rw-p 7ffffffea000 00:00 0                      [stack]
7fffe2dfe000-7fffe2e00000 r-xp 7fffe2dfe000 00:00 0                      [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]


Here's the nohup output:

######################################################################
make  t0001 t0002 t0003 t0004 connect print date norowset funccall lang_error tables binary_test moreandcount earlybind putdata params raiserror getdata transaction type genparams preperror prepare_results testodbc data error rebindpar convert_error typeinfo const_params insert_speed compute timeout array array_out
make[1]: Entering directory `/home/smile/tmp/freetds/freetds-0.64/src/odbc/unittests'
make[1]: `t0001' is up to date.
make[1]: `t0002' is up to date.
make[1]: `t0003' is up to date.
make[1]: `t0004' is up to date.
make[1]: `connect' is up to date.
make[1]: `print' is up to date.
make[1]: `date' is up to date.
make[1]: `norowset' is up to date.
make[1]: `funccall' is up to date.
make[1]: `lang_error' is up to date.
make[1]: `tables' is up to date.
make[1]: `binary_test' is up to date.
make[1]: `moreandcount' is up to date.
make[1]: `earlybind' is up to date.
make[1]: `putdata' is up to date.
make[1]: `params' is up to date.
make[1]: `raiserror' is up to date.
make[1]: `getdata' is up to date.
make[1]: `transaction' is up to date.
make[1]: `type' is up to date.
make[1]: `genparams' is up to date.
make[1]: `preperror' is up to date.
make[1]: `prepare_results' is up to date.
make[1]: `testodbc' is up to date.
make[1]: `data' is up to date.
make[1]: `error' is up to date.
make[1]: `rebindpar' is up to date.
make[1]: `convert_error' is up to date.
make[1]: `typeinfo' is up to date.
make[1]: `const_params' is up to date.
make[1]: `insert_speed' is up to date.
make[1]: `compute' is up to date.
make[1]: `timeout' is up to date.
make[1]: `array' is up to date.
make[1]: `array_out' is up to date.
make[1]: Leaving directory `/home/smile/tmp/freetds/freetds-0.64/src/odbc/unittests'
make  check-TESTS
make[1]: Entering directory `/home/smile/tmp/freetds/freetds-0.64/src/odbc/unittests'
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
drop table #odbctestdata
Unable to execute statement
create table #odbctestdata (col1 varchar(30) not null,col2 int not null,col3 float not null,col4 numeric(18,6) not null,col5 datetime not null,col6 text not null)
insert #odbctestdata values ('ABCDEFGHIJKLMNOP',123456,1234.56,123456.78,'Sep 11 2001 10:00AM','just to check returned length...')
select * from #odbctestdata
output data >ABCDEFGHIJKLMNOP< len_or_ind = 16
output data >123456< len_or_ind = 6
output data >1234.56< len_or_ind = 7
output data >123456.780000< len_or_ind = 13
output data >2001-09-11 10:00:00.000< len_or_ind = 23
output data >just to check returned length...< len_or_ind = 32
drop table #odbctestdata
Done.
PASS: t0001
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
drop table #odbctestdata
Unable to execute statement
create table #odbctestdata (i int)
insert #odbctestdata values (123)
select * from #odbctestdata where 0=1
select * from #odbctestdata
drop table #odbctestdata
Done.
PASS: t0002
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
create table #odbctestdata (i int)
select * from #odbctestdata select * from #odbctestdata
Getting next recordset
insert into #odbctestdata values(123)
select * from #odbctestdata select * from #odbctestdata
Getting next recordset
drop table #odbctestdata
create table #odbctestdata (i int)
Getting next recordset
insert into #odbctestdata values(123)
Getting next recordset
drop table #odbctestdata
Done.
PASS: t0003
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
Done.
PASS: t0004
SQLConnect connect..
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
connect string DSN connect..
connect string SERVERNAME connect..
odbcinst.ini must be configured with FreeTDS driver..
Unable to open data source (ret=-1)
Done.
PASS: connect
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
print 'START' select count(*) from sysobjects where name='sysobjects' print 'END'
Message: [FreeTDS][SQL Server]START
SELECT donotexistsfield FROM donotexiststable
Message: [FreeTDS][SQL Server]Invalid object name 'donotexiststable'.
Message: [unixODBC][Driver Manager]Function sequence error
Message: [unixODBC][Driver Manager]Function sequence error
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
print 'START' select count(*) from sysobjects where name='sysobjects' print 'END'
Message: [FreeTDS][SQL Server]START
Message: [FreeTDS][SQL Server]END
SELECT donotexistsfield FROM donotexiststable
Message: [FreeTDS][SQL Server]Invalid object name 'donotexiststable'.
Message: [unixODBC][Driver Manager]Function sequence error
Message: [unixODBC][Driver Manager]Function sequence error
Done.
PASS: print
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
select convert(datetime, '2002-12-27 18:43:21')
Date returned: 2002-12-27 18:43:21.000
select convert(datetime, '2002-12-27 18:43:21')
Date returned: 2002-12-27 18:43:21.000
Done.
PASS: date
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
drop proc sp_norowset_test
create proc sp_norowset_test as begin declare @i int end
exec sp_norowset_test
select name from master..sysobjects where name = 'sysobjects'
drop proc sp_norowset_test
Done.
PASS: norowset
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
drop proc simpleresult
Unable to execute statement
create proc simpleresult @i int as begin return @i end
DECLARE @i INT
drop proc simpleresult
drop proc simpleresult2
Unable to execute statement
create proc simpleresult2 @i int, @x int output, @y varchar(20) output as begin select @x = 6789 select @y = 'test foo' return @i end
drop proc simpleresult2
Done.
PASS: funccall
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
SELECT DATEADD(dd,-100000,getdate())
Done.
PASS: lang_error
SQL error 42000 -- [FreeTDS][SQL Server]The database name component of the object qualifier must be the name of the current database.
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
USE master
Test type '' with row
Test type ''VIEW'' with row
Test type ''TABLE'' without row
Test type ''VIEW'' with row
Test type 'TABLE' without row
Test type 'TABLE,VIEW' with row
Test type 'SYSTEM TABLE,'TABLE'' without row
Test type 'TABLE,'VIEW'' with row
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
USE master
Test type ''VIEW'' with row
Test type '' with row
Unable to execute statement
FAIL: tables
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
create table #binary_test (im IMAGE)
SET TEXTSIZE 1000000
DECLARE @i INT
Input and output buffers of length 131072 match.
Test passed.
PASS: binary_test
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
create table #tmp1 (i int)
create table #tmp2 (i int)
insert into #tmp1 values(1)
insert into #tmp1 values(2)
insert into #tmp1 values(5)
Use direct statement
Result 1
Result 2
Result 3
Result 4
Result 5
Use prepared statement
Result 1
Result 2
Done.
PASS: moreandcount
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
CREATE TABLE #test(id INT, name VARCHAR(100))
INSERT INTO #test(id, name) VALUES(8, 'sysobjects')
SELECT id, name FROM #test WHERE name = 'sysobjects' SELECT 123, 'foo'
SELECT 321, 'minni'
Done.
PASS: earlybind
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
CREATE TABLE #putdata (c TEXT NULL, b IMAGE NULL)
DECLARE @i INT
DECLARE @i2 INT
Done.
PASS: putdata
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
drop proc spTestProc
Unable to execute statement
CREATE PROCEDURE spTestProc
    @InParam int,
    @OutParam int OUTPUT,
    @OutString varchar(20) OUTPUT
AS
     SELECT @OutParam = @InParam
     SELECT @OutString = 'This is cool!'
     IF @InParam < 10
          RETURN (0)
     ELSE
          RETURN (1)

drop proc spTestProc
Output:
   Return Code = 0
   InParam = 5
   OutParam = 5
   OutString = This is cool!
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
drop proc spTestProc
Unable to execute statement
CREATE PROCEDURE spTestProc
    @InParam int,
    @OutParam int OUTPUT,
    @OutString varchar(20) OUTPUT
AS
     SELECT @OutParam = @InParam
     SELECT @OutString = 'This is cool!'
     IF @InParam < 10
          RETURN (0)
     ELSE
          RETURN (1)

drop proc spTestProc
Output:
   Return Code = 0
   InParam = 5
   OutParam = 5
   OutString = This is cool!
Done successfully!
PASS: params
raiserror.c:145 Invalid result
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
CREATE PROCEDURE #tmp1
    @InParam int,
    @OutParam int OUTPUT,
    @OutString varchar(20) OUTPUT
AS
     SET @OutParam = @InParam
     SET @OutString = 'This is bogus!'
     SELECT 'Here is the first row' AS FirstResult
     RAISERROR('An error occurred.', @InParam, 1)
     SELECT 'Here is the last row' AS LastResult
     RETURN (0)
RAISERROR('An error occurred.', 5, 1)
Result=0 DIAG REC 1: State=01000 Error=50000: [FreeTDS][SQL Server]An error occurred.
FAIL: raiserror
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
SELECT CONVERT(TEXT,'Prova')
Done.
PASS: getdata
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
DROP TABLE TestTransaction
CREATE TABLE TestTransaction ( value INT )
DROP PROCEDURE testinsert
CREATE PROCEDURE testinsert @value INT AS
INSERT INTO TestTransaction VALUES ( @value )
SELECT * FROM TestTransaction

DROP PROCEDURE testerror
CREATE PROCEDURE testerror AS
SELECT value FROM TestTransaction
SELECT value / (value-value) FROM TestTransaction

EXEC testinsert 1
EXEC testinsert 2
EXEC testerror
	47781511168001
error: expected to select 1 got 1
DROP PROCEDURE testinsert
DROP PROCEDURE testerror
DROP TABLE TestTransaction
Done.
FAIL: transaction
Error setting type -5 (SQL_BIGINT)
Error setting type -3 (SQL_VARBINARY)
Error setting type -4 (SQL_LONGVARBINARY)
Error setting type 12 (SQL_VARCHAR)
Error setting type -1 (SQL_LONGVARCHAR)
Error setting type 3 (SQL_DECIMAL)
Error setting type 6 (SQL_FLOAT)
Error setting type 99 (SQL_C_DEFAULT)
Error setting type 9 (SQL_C_DATE)
Error setting type 10 (SQL_C_TIME)
Error setting type 91 (SQL_C_TYPE_DATE)
Error setting type 92 (SQL_C_TYPE_TIME)
Error setting type 101 (SQL_C_INTERVAL_YEAR)
Error setting type 102 (SQL_C_INTERVAL_MONTH)
Error setting type 103 (SQL_C_INTERVAL_DAY)
Error setting type 104 (SQL_C_INTERVAL_HOUR)
Error setting type 105 (SQL_C_INTERVAL_MINUTE)
Error setting type 106 (SQL_C_INTERVAL_SECOND)
Error setting type 107 (SQL_C_INTERVAL_YEAR_TO_MONTH)
Error setting type 108 (SQL_C_INTERVAL_DAY_TO_HOUR)
Error setting type 109 (SQL_C_INTERVAL_DAY_TO_MINUTE)
Error setting type 110 (SQL_C_INTERVAL_DAY_TO_SECOND)
Error setting type 111 (SQL_C_INTERVAL_HOUR_TO_MINUTE)
Error setting type 112 (SQL_C_INTERVAL_HOUR_TO_SECOND)
Error setting type 113 (SQL_C_INTERVAL_MINUTE_TO_SECOND)
Error setting type -25 (SQL_C_SBIGINT)
Error setting type -27 (SQL_C_UBIGINT)
Error setting type -16 (SQL_C_SLONG)
Error setting type -15 (SQL_C_SSHORT)
Error setting type -26 (SQL_C_STINYINT)
Error setting type -18 (SQL_C_ULONG)
Error setting type -17 (SQL_C_USHORT)
Error setting type -28 (SQL_C_UTINYINT)
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
Setted type SQL_C_CHAR -> [1 (SQL_C_CHAR), 1 (SQL_C_CHAR), 0]
Setted type SQL_C_LONG -> [4 (SQL_C_LONG), 4 (SQL_C_LONG), 0]
Setted type SQL_C_SHORT -> [5 (SQL_C_SHORT), 5 (SQL_C_SHORT), 0]
Setted type SQL_C_FLOAT -> [7 (SQL_C_FLOAT), 7 (SQL_C_FLOAT), 0]
Setted type SQL_C_DOUBLE -> [8 (SQL_C_DOUBLE), 8 (SQL_C_DOUBLE), 0]
Setted type SQL_C_NUMERIC -> [2 (SQL_C_NUMERIC), 2 (SQL_C_NUMERIC), 0]
Setted type SQL_C_DEFAULT -> [99 (SQL_C_DEFAULT), 99 (SQL_C_DEFAULT), 0]
Setted type SQL_C_DATE -> [91 (SQL_C_TYPE_DATE), 9 (SQL_C_DATE), 1]
Setted type SQL_C_TIME -> [92 (SQL_C_TYPE_TIME), 9 (SQL_C_DATE), 2]
Setted type SQL_C_TIMESTAMP -> [93 (SQL_C_TYPE_TIMESTAMP), 9 (SQL_C_DATE), 3]
Setted type SQL_C_TYPE_DATE -> [91 (SQL_C_TYPE_DATE), 9 (SQL_C_DATE), 1]
Setted type SQL_C_TYPE_TIME -> [92 (SQL_C_TYPE_TIME), 9 (SQL_C_DATE), 2]
Setted type SQL_C_TYPE_TIMESTAMP -> [93 (SQL_C_TYPE_TIMESTAMP), 9 (SQL_C_DATE), 3]
Setted type SQL_C_INTERVAL_YEAR -> [101 (SQL_C_INTERVAL_YEAR), 10 (SQL_C_TIME), 1]
Setted type SQL_C_INTERVAL_MONTH -> [102 (SQL_C_INTERVAL_MONTH), 10 (SQL_C_TIME), 2]
Setted type SQL_C_INTERVAL_DAY -> [103 (SQL_C_INTERVAL_DAY), 10 (SQL_C_TIME), 3]
Setted type SQL_C_INTERVAL_HOUR -> [104 (SQL_C_INTERVAL_HOUR), 10 (SQL_C_TIME), 4]
Setted type SQL_C_INTERVAL_MINUTE -> [105 (SQL_C_INTERVAL_MINUTE), 10 (SQL_C_TIME), 5]
Setted type SQL_C_INTERVAL_SECOND -> [106 (SQL_C_INTERVAL_SECOND), 10 (SQL_C_TIME), 6]
Setted type SQL_C_INTERVAL_YEAR_TO_MONTH -> [107 (SQL_C_INTERVAL_YEAR_TO_MONTH), 10 (SQL_C_TIME), 7]
Setted type SQL_C_INTERVAL_DAY_TO_HOUR -> [108 (SQL_C_INTERVAL_DAY_TO_HOUR), 10 (SQL_C_TIME), 8]
Setted type SQL_C_INTERVAL_DAY_TO_MINUTE -> [109 (SQL_C_INTERVAL_DAY_TO_MINUTE), 10 (SQL_C_TIME), 9]
Setted type SQL_C_INTERVAL_DAY_TO_SECOND -> [110 (SQL_C_INTERVAL_DAY_TO_SECOND), 10 (SQL_C_TIME), 10]
Setted type SQL_C_INTERVAL_HOUR_TO_MINUTE -> [111 (SQL_C_INTERVAL_HOUR_TO_MINUTE), 10 (SQL_C_TIME), 11]
Setted type SQL_C_INTERVAL_HOUR_TO_SECOND -> [112 (SQL_C_INTERVAL_HOUR_TO_SECOND), 10 (SQL_C_TIME), 12]
Setted type SQL_C_INTERVAL_MINUTE_TO_SECOND -> [113 (SQL_C_INTERVAL_MINUTE_TO_SECOND), 10 (SQL_C_TIME), 13]
Setted type SQL_C_BINARY -> [-2 (SQL_C_BINARY), -2 (SQL_C_BINARY), 0]
Setted type SQL_C_BIT -> [-7 (SQL_C_BIT), -7 (SQL_C_BIT), 0]
Setted type SQL_C_SBIGINT -> [-25 (SQL_C_SBIGINT), -25 (SQL_C_SBIGINT), 0]
Setted type SQL_C_UBIGINT -> [-27 (SQL_C_UBIGINT), -27 (SQL_C_UBIGINT), 0]
Setted type SQL_C_TINYINT -> [-6 (SQL_C_TINYINT), -6 (SQL_C_TINYINT), 0]
Setted type SQL_C_SLONG -> [-16 (SQL_C_SLONG), -16 (SQL_C_SLONG), 0]
Setted type SQL_C_SSHORT -> [-15 (SQL_C_SSHORT), -15 (SQL_C_SSHORT), 0]
Setted type SQL_C_STINYINT -> [-26 (SQL_C_STINYINT), -26 (SQL_C_STINYINT), 0]
Setted type SQL_C_ULONG -> [-18 (SQL_C_ULONG), -18 (SQL_C_ULONG), 0]
Setted type SQL_C_USHORT -> [-17 (SQL_C_USHORT), -17 (SQL_C_USHORT), 0]
Setted type SQL_C_UTINYINT -> [-28 (SQL_C_UTINYINT), -28 (SQL_C_UTINYINT), 0]
Setted type SQL_C_GUID -> [-11 (SQL_C_GUID), -11 (SQL_C_GUID), 0]


Setted type SQL_C_CHAR -> [1 (SQL_C_CHAR), 1 (SQL_C_CHAR), 0]
Setted type SQL_C_LONG -> [4 (SQL_C_LONG), 4 (SQL_C_LONG), 0]
Setted type SQL_C_SHORT -> [5 (SQL_C_SHORT), 5 (SQL_C_SHORT), 0]
Setted type SQL_C_FLOAT -> [7 (SQL_C_FLOAT), 7 (SQL_C_FLOAT), 0]
Setted type SQL_C_DOUBLE -> [8 (SQL_C_DOUBLE), 8 (SQL_C_DOUBLE), 0]
Setted type SQL_C_NUMERIC -> [2 (SQL_C_NUMERIC), 2 (SQL_C_NUMERIC), 0]
Setted type SQL_C_TIMESTAMP -> [93 (SQL_C_TYPE_TIMESTAMP), 9 (SQL_C_DATE), 3]
Setted type SQL_C_TYPE_TIMESTAMP -> [93 (SQL_C_TYPE_TIMESTAMP), 9 (SQL_C_DATE), 3]
Setted type SQL_C_BINARY -> [-2 (SQL_C_BINARY), -2 (SQL_C_BINARY), 0]
Setted type SQL_C_BIT -> [-7 (SQL_C_BIT), -7 (SQL_C_BIT), 0]
Setted type SQL_C_TINYINT -> [-6 (SQL_C_TINYINT), -6 (SQL_C_TINYINT), 0]
Setted type SQL_C_GUID -> [-11 (SQL_C_GUID), -11 (SQL_C_GUID), 0]
Setted type SQL_BIGINT -> [-5 (SQL_BIGINT), -5 (SQL_BIGINT), 0]
Setted type SQL_VARBINARY -> [-3 (SQL_VARBINARY), -3 (SQL_VARBINARY), 0]
Setted type SQL_LONGVARBINARY -> [-4 (SQL_LONGVARBINARY), -4 (SQL_LONGVARBINARY), 0]
Setted type SQL_VARCHAR -> [12 (SQL_VARCHAR), 12 (SQL_VARCHAR), 0]
Setted type SQL_LONGVARCHAR -> [-1 (SQL_LONGVARCHAR), -1 (SQL_LONGVARCHAR), 0]
Setted type SQL_DECIMAL -> [3 (SQL_DECIMAL), 3 (SQL_DECIMAL), 0]
Setted type SQL_FLOAT -> [6 (SQL_FLOAT), 6 (SQL_FLOAT), 0]
PASS: type
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
drop proc spTestProc
Unable to execute statement
CREATE PROC spTestProc @i NUMERIC(18,2) OUTPUT AS SELECT @i = CONVERT(NUMERIC(18,2), '123')
drop proc spTestProc
CREATE PROC spTestProc @i DECIMAL(18,2) OUTPUT AS SELECT @i = CONVERT(DECIMAL(18,2), '123')
drop proc spTestProc
CREATE PROC spTestProc @i NUMERIC(18,2) OUTPUT AS SELECT @i = CONVERT(NUMERIC(18,2), '123')
drop proc spTestProc
SELECT CONVERT(INTEGER, '12345')
CREATE TABLE #tmp_insert (col VARCHAR(20))
SELECT * FROM #tmp_insert WHERE col = CONVERT(VARCHAR(20), '12345')
DROP TABLE #tmp_insert
CREATE PROC spTestProc @i VARCHAR(20) OUTPUT AS SELECT @i = CONVERT(VARCHAR(20), '313233')
drop proc spTestProc
CREATE PROC spTestProc @i DATETIME OUTPUT AS SELECT @i = CONVERT(DATETIME, '2004-02-24 15:16:17')
drop proc spTestProc
CREATE PROC spTestProc @i SMALLDATETIME OUTPUT AS SELECT @i = CONVERT(SMALLDATETIME, '2004-02-24 15:16:17')
drop proc spTestProc
SELECT CONVERT(DATETIME, '2005-07-22 09:51:34')
CREATE TABLE #tmp_insert (col DATETIME)
SELECT * FROM #tmp_insert WHERE col = CONVERT(DATETIME, '2005-07-22 09:51:34')
DROP TABLE #tmp_insert
SELECT CONVERT(DATETIME, '2005-07-22 13:02:03')
CREATE TABLE #tmp_insert (col DATETIME)
SELECT * FROM #tmp_insert WHERE col = CONVERT(DATETIME, '2005-07-22 00:00:00')
DROP TABLE #tmp_insert
SELECT CONVERT(DATETIME, '2003-07-22 13:02:03')
CREATE TABLE #tmp_insert (col DATETIME)
SELECT * FROM #tmp_insert WHERE col = CONVERT(DATETIME, '2008-04-22 13:02:03')
DROP TABLE #tmp_insert
SELECT CONVERT(FLOAT, '1234.25')
CREATE TABLE #tmp_insert (col FLOAT)
SELECT * FROM #tmp_insert WHERE col = CONVERT(FLOAT, '1234.25')
DROP TABLE #tmp_insert
SELECT CONVERT(REAL, '-1234.25')
CREATE TABLE #tmp_insert (col FLOAT)
SELECT * FROM #tmp_insert WHERE col = CONVERT(FLOAT, '-1234.25')
DROP TABLE #tmp_insert
SELECT CONVERT(REAL, '1234.25')
CREATE TABLE #tmp_insert (col FLOAT)
SELECT * FROM #tmp_insert WHERE col = CONVERT(FLOAT, '1234.25')
DROP TABLE #tmp_insert
SELECT CONVERT(FLOAT, '-1234.25')
CREATE TABLE #tmp_insert (col FLOAT)
SELECT * FROM #tmp_insert WHERE col = CONVERT(FLOAT, '-1234.25')
DROP TABLE #tmp_insert
SELECT CONVERT(FLOAT, '1234.25')
CREATE TABLE #tmp_insert (col FLOAT)
SELECT * FROM #tmp_insert WHERE col = CONVERT(FLOAT, '1234.25')
DROP TABLE #tmp_insert
SELECT CONVERT(REAL, '-1234.25')
CREATE TABLE #tmp_insert (col FLOAT)
SELECT * FROM #tmp_insert WHERE col = CONVERT(FLOAT, '-1234.25')
DROP TABLE #tmp_insert
SELECT CONVERT(FLOAT, '1234.25')
CREATE TABLE #tmp_insert (col FLOAT)
SELECT * FROM #tmp_insert WHERE col = CONVERT(FLOAT, '1234.25')
DROP TABLE #tmp_insert
SELECT CONVERT(REAL, '-1234.25')
CREATE TABLE #tmp_insert (col FLOAT)
SELECT * FROM #tmp_insert WHERE col = CONVERT(FLOAT, '-1234.25')
DROP TABLE #tmp_insert
SELECT CONVERT(TINYINT, '231')
CREATE TABLE #tmp_insert (col TINYINT)
SELECT * FROM #tmp_insert WHERE col = CONVERT(TINYINT, '231')
DROP TABLE #tmp_insert
SELECT CONVERT(NUMERIC(20,3), '765432.2')
CREATE TABLE #tmp_insert (col NUMERIC(20,3))
SELECT * FROM #tmp_insert WHERE col = CONVERT(NUMERIC(20,3), '765432')
DROP TABLE #tmp_insert
SELECT CONVERT(BIT, '0')
CREATE TABLE #tmp_insert (col BIT)
SELECT * FROM #tmp_insert WHERE col = CONVERT(BIT, '0')
DROP TABLE #tmp_insert
SELECT CONVERT(BIT, '1')
CREATE TABLE #tmp_insert (col BIT)
SELECT * FROM #tmp_insert WHERE col = CONVERT(BIT, '1')
DROP TABLE #tmp_insert
Done successfully!
PASS: genparams
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
CREATE TABLE #urls ( recdate DATETIME ) 
INSERT INTO #urls ( recdate ) VALUES ( '2003-10-1 10:11:1 0' )
err=[FreeTDS][SQL Server]The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.
err=[FreeTDS][SQL Server]Invalid column name 'XXNOTCOLUMN'.
Done.
PASS: preperror
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
create table #odbctestdata (i int, c char(20), n numeric(34,12) )
select * from #odbctestdata
drop table #odbctestdata
Done.
PASS: prepare_results
Running test  1: Raw ODBC direct query... TestRawODBCDirectQuery (in)
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
CREATE TABLE #Products (ProductID int NOT NULL ,ProductName varchar (40) ,SupplierID int NULL ,CategoryID int NULL ,QuantityPerUnit varchar (20)  ,UnitPrice money NULL ,UnitsInStock smallint NULL ,UnitsOnOrder smallint NULL ,ReorderLevel smallint NULL ,Discontinued bit NOT NULL ) INSERT INTO #Products(ProductID,ProductName,SupplierID,CategoryID,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued) VALUES(1,'Chai',1,1,'10 boxes x 20 bags',18.00,39,0,10,0) INSERT INTO #Products(ProductID,ProductName,SupplierID,CategoryID,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued) VALUES(2,'Chang',1,1,'24 - 12 oz bottles',19.00,17,40,25,0) INSERT INTO #Products(ProductID,ProductName,SupplierID,CategoryID,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued) VALUES(3,'Aniseed Syrup',1,2,'12 - 550 ml bottles',10.00,13,70,25,0) INSERT INTO #Products(ProductID,ProductName,SupplierID,CategoryID,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued) VALUES(4,'Chef Anton''s Cajun Seasoning',2,2,'48 - 6 oz jars',22.00,53,0,0,0) INSERT INTO #Products(ProductID,ProductName,SupplierID,CategoryID,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued) VALUES(5,'Chef Anton''s Gumbo Mix',2,2,'36 boxes',21.35,0,0,0,1) 
Got 3 rows
TestRawODBCDirectQuery (out): ok
pass
Running test  2: Raw ODBC prepared query... TestRawODBCPreparedQuery (in)
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
CREATE TABLE #Products (ProductID int NOT NULL ,ProductName varchar (40) ,SupplierID int NULL ,CategoryID int NULL ,QuantityPerUnit varchar (20)  ,UnitPrice money NULL ,UnitsInStock smallint NULL ,UnitsOnOrder smallint NULL ,ReorderLevel smallint NULL ,Discontinued bit NOT NULL ) INSERT INTO #Products(ProductID,ProductName,SupplierID,CategoryID,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued) VALUES(9,'Mishi Kobe Niku',4,6,'18 - 500 g pkgs.',97.00,29,0,0,1) INSERT INTO #Products(ProductID,ProductName,SupplierID,CategoryID,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued) VALUES(10,'Ikura',4,8,'12 - 200 ml jars',31.00,31,0,0,0) INSERT INTO #Products(ProductID,ProductName,SupplierID,CategoryID,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued) VALUES(74,'Longlife Tofu',4,7,'5 kg pkg.',10.00,4,20,5,0) INSERT INTO #Products(ProductID,ProductName,SupplierID,CategoryID,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued) VALUES(11,'Queso Cabrales',5,4,'1 kg pkg.',21.00,22,30,30,0) INSERT INTO #Products(ProductID,ProductName,SupplierID,CategoryID,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued) VALUES(12,'Queso Manchego La Pastora',5,4,'10 - 500 g pkgs.',38.00,86,0,0,0)
Got 3 rows
TestRawODBCPreparedQuery (out): ok
pass
Running test  3: Raw ODBC GUID... TestRawODBCGuid (in)
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
Creating #pet table
DROP PROC GetGUIDRows
Creating stored proc GetGUIDRows
Insert row 1
Insert row 2
Insert row 3
Insert row 4
Insert row 5
retrieving name and guid
name: Fang       guid: 2DE56EBA-0F25-4FAF-B2B8-950F0CA94DE0
name: Splash     guid: 12345678-1234-1234-1234-123456789012
name: Woof       guid: 87654321-4321-4321-4321-123456789ABC
name: Spike      guid: 1234ABCD-ABCD-ABCD-ABCD-123456789ABC
name: Fluffy     guid: AABBCCDD-EEFF-1122-1122-334455667788
retrieving name and guid again
Fang       2DE56EBA-0F25-4FAF-B2B8-950F0CA94DE0
Splash     12345678-1234-1234-1234-123456789012
Woof       87654321-4321-4321-4321-123456789ABC
Spike      1234ABCD-ABCD-ABCD-ABCD-123456789ABC
Fluffy     AABBCCDD-EEFF-1122-1122-334455667788
retrieving name and guid
Woof       87654321-4321-4321-4321-123456789ABC
DROP PROC GetGUIDRows
TestRawODBCGuid (out): ok
pass

All 3 tests passed.

PASS: testodbc
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
SELECT CONVERT(NUMERIC(18,2), '123') AS data
SELECT CONVERT(CHAR(7), 'pippo') AS data
SELECT CONVERT(TEXT, 'mickey') AS data
SELECT CONVERT(VARCHAR(20), 'foo') AS data
SELECT CONVERT(BINARY(5), 'qwer') AS data
SELECT CONVERT(IMAGE, 'cricetone') AS data
SELECT CONVERT(VARBINARY(20), 'teo') AS data
SELECT CONVERT(TIMESTAMP, 'abcdefghi') AS data
SELECT CONVERT(DATETIME, '2004-02-24 15:16:17') AS data
SELECT CONVERT(SMALLDATETIME, '2004-02-24 15:16:17') AS data
SELECT CONVERT(BIT, '1') AS data
SELECT CONVERT(BIT, '0') AS data
SELECT CONVERT(TINYINT, '231') AS data
SELECT CONVERT(SMALLINT, '4321') AS data
SELECT CONVERT(INT, '1234567') AS data
SELECT CONVERT(DECIMAL, '1234.5678') AS data
SELECT CONVERT(NUMERIC, '8765.4321') AS data
SELECT CONVERT(FLOAT, '1234.5678') AS data
SELECT CONVERT(REAL, '8765.4321') AS data
SELECT CONVERT(SMALLMONEY, '765.4321') AS data
SELECT CONVERT(MONEY, '4321234.5678') AS data
SELECT CONVERT(UNIQUEIDENTIFIER, '0DDF3B64-E692-11D1-AB06-00AA00BDD685') AS data
Done successfully!
PASS: data
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
create table #tmp (i int)
insert into #tmp values(3)
insert into #tmp values(4)
insert into #tmp values(5)
insert into #tmp values(6)
insert into #tmp values(7)
select 100 / (i - 5) from #tmp order by i
Message: [FreeTDS][SQL Server]Divide by zero error encountered.
SELECT * FROM sysobjects
SELECT * FROM sysobjects
Message: [FreeTDS][SQL Server]Invalid cursor state
Done.
PASS: error
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
CREATE TABLE #tmp1 (c VARCHAR(200))
DELETE FROM #tmp1
SELECT 1 FROM #tmp1 WHERE c = ''
SELECT 1 FROM #tmp1 WHERE c = 'a'
SELECT 1 FROM #tmp1 WHERE c = 'bb'
SELECT 1 FROM #tmp1 WHERE c = 'miaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiao'
DELETE FROM #tmp1
SELECT 1 FROM #tmp1 WHERE c = ''
SELECT 1 FROM #tmp1 WHERE c = 'a'
SELECT 1 FROM #tmp1 WHERE c = 'bb'
SELECT 1 FROM #tmp1 WHERE c = 'miaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiaomiao'
Done.
PASS: rebindpar
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
create table #test_output (id int, msg text)
PASS: convert_error
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
Using ODBC version 2
select cast(getdate() as date)
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
Using ODBC version 3
select cast(getdate() as date)
Done.
PASS: typeinfo
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
drop proc const_param
create proc const_param @in1 int, @in2 int, @in3 datetime, @in4 varchar(10), @out int output as
begin
 set nocount on
 select @out = 7654321
 if (@in1 <> @in2 and @in2 is not null) or @in3 <> convert(datetime, '2004-10-15 12:09:08') or @in4 <> 'foo'
  select @out = 1234567
 return 24680
end
DECLARE @i INT
drop proc const_param
create proc const_param @in1 float, @in2 varbinary(100) as
begin
 if @in1 <> 12.5 or @in2 <> 0x0102030405060708
  return 12345
 return 54321
end
drop proc const_param
create proc const_param @in varchar(20) as
begin
 if @in = 'value' select 8421
 select 1248
end
{CALL const_param('value')}
drop proc const_param
Unable to execute statement
Done.
PASS: const_params
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
DROP TABLE test
CREATE TABLE test(i int, c varchar(40))
DELETE FROM test
DROP TABLE test
PASS: insert_speed
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
create table #tmp1 (c varchar(20), i int)
insert into #tmp1 values('pippo', 12)
insert into #tmp1 values('pippo', 34)
insert into #tmp1 values('pluto', 1)
insert into #tmp1 values('pluto', 2)
insert into #tmp1 values('pluto', 3)
select * from #tmp1 order by c, i compute sum(i)
select c as mao, i from #tmp1 order by c, i compute sum(i) by c compute max(i)
select * from #tmp1 where i = 2 or i = 34 order by c, i compute min(i) by c
PASS: compute
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
drop table test_timeout
create table test_timeout(n numeric(18,0) primary key, t varchar(30))
insert into test_timeout(n, t) values(1, 'initial')
update test_timeout set t = 'second' where n = 1
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
update test_timeout set t = 'bad' where n = 1
drop table test_timeout
PASS: timeout
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
drop table #tmp1
create table #tmp1 (id tinyint, value char(20))
drop table #tmp1
create table #tmp1 (id tinyint, value char(20))
drop table #tmp1
create table #tmp1 (id tinyint, value char(20))
drop table #tmp1
create table #tmp1 (id tinyint, value char(20))
drop table #tmp1
create table #tmp1 (id tinyint, value char(20))
Success!.
PASS: array
odbctest
--------

connection parameters:
server:   'equinet'
user:     'sa'
password: '????'
database: 'tempdb'
use tempdb
CREATE TABLE #odbc_test(i INT, t TEXT)
INSERT INTO #odbc_test(i, t) VALUES(1, 'arow number 0')
INSERT INTO #odbc_test(i, t) VALUES(2, 'brow number 13')
INSERT INTO #odbc_test(i, t) VALUES(3, 'crow number 26')
INSERT INTO #odbc_test(i, t) VALUES(4, 'drow number 39')
INSERT INTO #odbc_test(i, t) VALUES(5, 'erow number 52')
INSERT INTO #odbc_test(i, t) VALUES(6, 'frow number 65')
INSERT INTO #odbc_test(i, t) VALUES(7, 'grow number 78')
INSERT INTO #odbc_test(i, t) VALUES(8, 'hrow number 91')
INSERT INTO #odbc_test(i, t) VALUES(9, 'irow number 104')
INSERT INTO #odbc_test(i, t) VALUES(10, 'jrow number 117')
test line 154
/bin/bash: line 4: 22932 Aborted                 ${dir}$tst
FAIL: array_out
====================
4 of 35 tests failed
====================
make[1]: *** [check-TESTS] Error 1
make[1]: Leaving directory `/home/smile/tmp/freetds/freetds-0.64/src/odbc/unittests'
make: *** [check-am] Error 2



More information about the FreeTDS mailing list