Skip to Content.
Sympa Menu

freetds - [freetds] Numeric data types

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "David Nsengiyumva" <davidn AT finsolutions.co.za>
  • To: <freetds AT lists.ibiblio.org>
  • Subject: [freetds] Numeric data types
  • Date: Wed, 10 Dec 2003 15:59:52 +0200

Hi there,

I am having problems with SQL queries that return numeric and date data
types. First of all I am accessing a MS SQL Server 2000 from a Win2000
machine and I am using FreeTDS-0.61.2.
The Problem happens in the 'cs_convert' function. The 'if (src_type ==
desttype)' succeed and the switch statement 'switch(desttype)' goes to the
SYBBITN, SYBNUMERIC, SYBDECIMAL case and since 'src_len > destlen' then the
function returns CS_FAIL. Basically src_len=35 and destlen=17.
>From what I can think of is that when I receive data (fecthing data) I read
17 bytes (that's where destlen=17 comes from) but the allocated space is 35
(from the struct tdsnumeric)

typedef struct tdsnumeric
{
unsigned char precision;
unsigned char scale;
unsigned char array[33]; // why this ?????
} TDS_NUMERIC;)

My log file looks like this


Starting log file for FreeTDS 0.60
on 2003-12-10 15:58:45 with debug level 99.
Using trivial iconv from
S:\Engines\source\freetds\src\replacements\iconv_replacement.c
names for ISO-8859-1: ISO-8859-1
names for UTF-8: UTF-8
names for UCS-2LE: UCS-2LE
names for UCS-2BE: (null)
iconv to convert client-side data to the "ISO-8859-1" character set
15:58:45 tds_iconv_info_init: converting "ISO-8859-1"->"UCS-2LE"
15:58:45 tds_iconv_info_init: converting "ISO-8859-1"->"UCS-2LE"
15:58:45 IP address pointer is NULL
15:58:46 Connecting to 10.0.3.73 port 1433, TDS 7.0.
15:58:46 tds_put_string converting 8 bytes of "finsol15"
15:58:46 tds_put_string wrote 16 bytes
15:58:46 tds_put_string converting 2 bytes of "sa"
15:58:46 tds_put_string wrote 4 bytes
15:58:46 tds_put_string wrote 0 bytes
15:58:46 tds_put_string converting 12 bytes of "FinSolSQLDev"
15:58:46 tds_put_string wrote 24 bytes
15:58:46 tds_put_string converting 10 bytes of "CT-Library"
15:58:46 tds_put_string wrote 20 bytes
15:58:46 tds_put_string converting 10 bytes of "us_english"
15:58:46 tds_put_string wrote 20 bytes
15:58:46 tds_put_string wrote 0 bytes
Sending packet @ 15:58:46
0000 10 01 00 ca 00 00 01 00-c2 00 00 00 00 00 00 70 |........ .......p|
0010 00 00 00 00 06 83 f2 f8-38 06 00 00 00 00 00 00 |........ 8.......|
0020 e0 03 00 00 88 ff ff ff-36 04 00 00 56 00 08 00 |........ 6...V...|
0030 66 00 02 00 6a 00 0c 00-82 00 00 00 82 00 0c 00 |f...j... ........|
0040 00 00 00 00 9a 00 0a 00-ae 00 0a 00 c2 00 00 00 |........ ........|
0050 00 00 00 00 00 00 c2 00-00 00 c2 00 00 00 66 00 |........ ......f.|
0060 69 00 6e 00 73 00 6f 00-6c 00 31 00 35 00 73 00 |i.n.s.o. l.1.5.s.|
0070 61 00 c3 a5 33 a5 43 a5-92 a5 53 a5 63 a5 92 a5 |a...3.C. ..S.c...|
0080 b2 a5 63 a5 e3 a5 f3 a5-c2 a5 46 00 69 00 6e 00 |..c..... ..F.i.n.|
0090 53 00 6f 00 6c 00 53 00-51 00 4c 00 44 00 65 00 |S.o.l.S. Q.L.D.e.|
00a0 76 00 43 00 54 00 2d 00-4c 00 69 00 62 00 72 00 |v.C.T.-. L.i.b.r.|
00b0 61 00 72 00 79 00 75 00-73 00 5f 00 65 00 6e 00 |a.r.y.u. s._.e.n.|
00c0 67 00 6c 00 69 00 73 00-68 00 |g.l.i.s. h.|


15:58:46 tds_process_login_tokens()
Received header @ 15:58:46
0000 04 01 01 b0 00 3c 01 00- |.....<..|


Received packet @ 15:58:46
0000 e3 1b 00 01 06 6d 00 61-00 73 00 74 00 65 00 72 |.....m.a .s.t.e.r|
0010 00 06 6d 00 61 00 73 00-74 00 65 00 72 00 ab 6e |..m.a.s. t.e.r..n|
0020 00 45 16 00 00 02 00 25-00 43 00 68 00 61 00 6e |.E.....% .C.h.a.n|
0030 00 67 00 65 00 64 00 20-00 64 00 61 00 74 00 61 |.g.e.d. .d.a.t.a|
0040 00 62 00 61 00 73 00 65-00 20 00 63 00 6f 00 6e |.b.a.s.e . .c.o.n|
0050 00 74 00 65 00 78 00 74-00 20 00 74 00 6f 00 20 |.t.e.x.t . .t.o. |
0060 00 27 00 6d 00 61 00 73-00 74 00 65 00 72 00 27 |.'.m.a.s .t.e.r.'|
0070 00 2e 00 0c 46 00 49 00-4e 00 53 00 4f 00 4c 00 |....F.I. N.S.O.L.|
0080 53 00 51 00 4c 00 44 00-45 00 56 00 00 00 00 e3 |S.Q.L.D. E.V.....|
0090 17 00 02 0a 75 00 73 00-5f 00 65 00 6e 00 67 00 |....u.s. _.e.n.g.|
00a0 6c 00 69 00 73 00 68 00-00 ab 72 00 47 16 00 00 |l.i.s.h. ..r.G...|
00b0 01 00 27 00 43 00 68 00-61 00 6e 00 67 00 65 00 |..'.C.h. a.n.g.e.|
00c0 64 00 20 00 6c 00 61 00-6e 00 67 00 75 00 61 00 |d. .l.a. n.g.u.a.|
00d0 67 00 65 00 20 00 73 00-65 00 74 00 74 00 69 00 |g.e. .s. e.t.t.i.|
00e0 6e 00 67 00 20 00 74 00-6f 00 20 00 75 00 73 00 |n.g. .t. o. .u.s.|
00f0 5f 00 65 00 6e 00 67 00-6c 00 69 00 73 00 68 00 |_.e.n.g. l.i.s.h.|
0100 2e 00 0c 46 00 49 00 4e-00 53 00 4f 00 4c 00 53 |...F.I.N .S.O.L.S|
0110 00 51 00 4c 00 44 00 45-00 56 00 00 00 00 e3 0f |.Q.L.D.E .V......|
0120 00 03 05 69 00 73 00 6f-00 5f 00 31 00 01 00 00 |...i.s.o ._.1....|
0130 e3 0b 00 05 04 31 00 30-00 33 00 33 00 00 e3 0f |.....1.0 .3.3....|
0140 00 06 06 31 00 39 00 36-00 36 00 30 00 39 00 00 |...1.9.6 .6.0.9..|
0150 ad 36 00 01 07 00 00 00-16 4d 00 69 00 63 00 72 |.6...... .M.i.c.r|
0160 00 6f 00 73 00 6f 00 66-00 74 00 20 00 53 00 51 |.o.s.o.f .t. .S.Q|
0170 00 4c 00 20 00 53 00 65-00 72 00 76 00 65 00 72 |.L. .S.e .r.v.e.r|
0180 00 00 00 00 00 08 00 02-f8 e3 13 00 04 04 34 00 |........ ......4.|
0190 30 00 39 00 36 00 04 34-00 30 00 39 00 36 00 fd |0.9.6..4 .0.9.6..|
01a0 00 00 00 00 00 00 00 00- |........|


15:58:46 looking for login token, got e3(ENVCHANGE)
15:58:46 tds_process_default_tokens() marker is e3(ENVCHANGE)
tds_get_string: reading 12 from wire to give 6 to client.
tds_get_string: reading 12 from wire to give 6 to client.
15:58:46 looking for login token, got ab(INFO)
15:58:46 tds_process_default_tokens() marker is ab(INFO)
tds_get_string: reading 74 from wire to give 37 to client.
tds_get_string: reading 24 from wire to give 12 to client.
15:58:46 looking for login token, got e3(ENVCHANGE)
15:58:46 tds_process_default_tokens() marker is e3(ENVCHANGE)
tds_get_string: reading 20 from wire to give 10 to client.
15:58:46 looking for login token, got ab(INFO)
15:58:46 tds_process_default_tokens() marker is ab(INFO)
tds_get_string: reading 78 from wire to give 39 to client.
tds_get_string: reading 24 from wire to give 12 to client.
15:58:46 looking for login token, got e3(ENVCHANGE)
15:58:46 tds_process_default_tokens() marker is e3(ENVCHANGE)
tds_get_string: reading 10 from wire to give 5 to client.
tds_get_string: reading 2 from wire to give 1 to client.
15:58:46 looking for login token, got e3(ENVCHANGE)
15:58:46 tds_process_default_tokens() marker is e3(ENVCHANGE)
tds_get_string: reading 8 from wire to give 4 to client.
15:58:46 looking for login token, got e3(ENVCHANGE)
15:58:46 tds_process_default_tokens() marker is e3(ENVCHANGE)
tds_get_string: reading 12 from wire to give 6 to client.
15:58:46 looking for login token, got ad(LOGINACK)
tds_get_string: reading 44 from wire to give 22 to client.
15:58:46 looking for login token, got e3(ENVCHANGE)
15:58:46 tds_process_default_tokens() marker is e3(ENVCHANGE)
tds_get_string: reading 8 from wire to give 4 to client.
tds_get_string: reading 8 from wire to give 4 to client.
15:58:46 increasing block size from 4096 to 4096
15:58:46 looking for login token, got fd(DONE)
15:58:46 tds_process_default_tokens() marker is fd(DONE)
15:58:46 tds_process_end: more_results = 0
15:58:46 was_cancelled = 0
15:58:46 error = 0
15:58:46 done_count_valid = 0
15:58:46 tds_process_end() state set to TDS_IDLE
15:58:46 leaving tds_process_login_tokens() returning 1
15:58:46 leaving ct_connect() returning 1
15:58:46 ct_cmd_alloc()
15:58:47 ct_command()
15:58:47 ct_send()
15:58:47 tds_put_string converting 17 bytes of "use quant_base_v3"
15:58:47 tds_put_string wrote 34 bytes
Sending packet @ 15:58:47
0000 01 01 00 2a 00 00 01 00-75 00 73 00 65 00 20 00 |...*.... u.s.e. .|
0010 71 00 75 00 61 00 6e 00-74 00 5f 00 62 00 61 00 |q.u.a.n. t._.b.a.|
0020 73 00 65 00 5f 00 76 00-33 00 |s.e._.v. 3.|


15:58:47 ct_send() succeeded
15:58:47 ct_results()
Received header @ 15:58:47
0000 04 01 00 bc 00 3c 01 00- |.....<..|


Received packet @ 15:58:47
0000 e3 29 00 01 0d 71 00 75-00 61 00 6e 00 74 00 5f |.)...q.u .a.n.t._|
0010 00 62 00 61 00 73 00 65-00 5f 00 76 00 33 00 06 |.b.a.s.e ._.v.3..|
0020 6d 00 61 00 73 00 74 00-65 00 72 00 ab 7c 00 45 |m.a.s.t. e.r..|.E|
0030 16 00 00 01 00 2c 00 43-00 68 00 61 00 6e 00 67 |.....,.C .h.a.n.g|
0040 00 65 00 64 00 20 00 64-00 61 00 74 00 61 00 62 |.e.d. .d .a.t.a.b|
0050 00 61 00 73 00 65 00 20-00 63 00 6f 00 6e 00 74 |.a.s.e. .c.o.n.t|
0060 00 65 00 78 00 74 00 20-00 74 00 6f 00 20 00 27 |.e.x.t. .t.o. .'|
0070 00 71 00 75 00 61 00 6e-00 74 00 5f 00 62 00 61 |.q.u.a.n .t._.b.a|
0080 00 73 00 65 00 5f 00 76-00 33 00 27 00 2e 00 0c |.s.e._.v .3.'....|
0090 46 00 49 00 4e 00 53 00-4f 00 4c 00 53 00 51 00 |F.I.N.S. O.L.S.Q.|
00a0 4c 00 44 00 45 00 56 00-00 01 00 fd 00 00 e2 00 |L.D.E.V. ........|
00b0 00 00 00 00 - |....|


15:58:47 processing result tokens. marker is e3(ENVCHANGE)
15:58:47 tds_process_default_tokens() marker is e3(ENVCHANGE)
tds_get_string: reading 26 from wire to give 13 to client.
tds_get_string: reading 12 from wire to give 6 to client.
15:58:47 processing result tokens. marker is ab(INFO)
15:58:47 tds_process_default_tokens() marker is ab(INFO)
tds_get_string: reading 88 from wire to give 44 to client.
tds_get_string: reading 24 from wire to give 12 to client.
15:58:47 processing result tokens. marker is fd(DONE)
15:58:47 tds_process_end: more_results = 0
15:58:47 was_cancelled = 0
15:58:47 error = 0
15:58:47 done_count_valid = 0
15:58:47 tds_process_end() state set to TDS_IDLE
15:58:47 ct_results() process_result_tokens returned 1 (type 4052)
15:58:47 ct_results() results state = 0
15:58:47 ct_results()
15:58:47 ct_results()
15:58:47 tds_process_result_tokens() state is COMPLETED
15:58:47 ct_results() process_result_tokens returned 2 (type 4052)
15:58:47 ct_command()
15:58:47 ct_send()
15:58:47 tds_put_string converting 45 bytes of "exec ap_sel_equity_meta_data
@p_equity_id=10;"
15:58:47 tds_put_string wrote 90 bytes
Sending packet @ 15:58:47
0000 01 01 00 62 00 00 01 00-65 00 78 00 65 00 63 00 |...b.... e.x.e.c.|
0010 20 00 61 00 70 00 5f 00-73 00 65 00 6c 00 5f 00 | .a.p._. s.e.l._.|
0020 65 00 71 00 75 00 69 00-74 00 79 00 5f 00 6d 00 |e.q.u.i. t.y._.m.|
0030 65 00 74 00 61 00 5f 00-64 00 61 00 74 00 61 00 |e.t.a._. d.a.t.a.|
0040 20 00 40 00 70 00 5f 00-65 00 71 00 75 00 69 00 | .@.p._. e.q.u.i.|
0050 74 00 79 00 5f 00 69 00-64 00 3d 00 31 00 30 00 |t.y._.i. d.=.1.0.|
0060 3b 00 - |;.|


15:58:47 ct_send() succeeded
15:58:47 ct_results()
Received header @ 15:58:47
0000 04 01 01 f0 00 3c 01 00- |.....<..|


Received packet @ 15:58:47
0000 81 03 00 00 00 10 00 6c-11 0a 00 0e 65 00 71 00 |.......l ....e.q.|
0010 75 00 69 00 74 00 79 00-5f 00 74 00 79 00 70 00 |u.i.t.y. _.t.y.p.|
0020 65 00 5f 00 69 00 64 00-00 00 08 00 6c 11 0a 00 |e._.i.d. ....l...|
0030 09 66 00 61 00 63 00 74-00 6f 00 72 00 5f 00 69 |.f.a.c.t .o.r._.i|
0040 00 64 00 00 00 08 00 6c-11 0a 00 0e 73 00 65 00 |.d.....l ....s.e.|
0050 72 00 69 00 65 00 73 00-5f 00 74 00 79 00 70 00 |r.i.e.s. _.t.y.p.|
0060 65 00 5f 00 69 00 64 00-d1 05 01 02 00 00 00 05 |e._.i.d. ........|
0070 01 02 00 00 00 05 01 02-00 00 00 d1 05 01 02 00 |........ ........|
0080 00 00 05 01 03 00 00 00-05 01 02 00 00 00 d1 05 |........ ........|
0090 01 02 00 00 00 05 01 04-00 00 00 05 01 02 00 00 |........ ........|
00a0 00 d1 05 01 02 00 00 00-05 01 05 00 00 00 05 01 |........ ........|
00b0 02 00 00 00 d1 05 01 02-00 00 00 05 01 06 00 00 |........ ........|
00c0 00 05 01 02 00 00 00 d1-05 01 02 00 00 00 05 01 |........ ........|
00d0 07 00 00 00 05 01 02 00-00 00 d1 05 01 02 00 00 |........ ........|
00e0 00 05 01 08 00 00 00 05-01 02 00 00 00 d1 05 01 |........ ........|
00f0 02 00 00 00 05 01 09 00-00 00 05 01 02 00 00 00 |........ ........|
0100 d1 05 01 02 00 00 00 05-01 0a 00 00 00 05 01 02 |........ ........|
0110 00 00 00 d1 05 01 02 00-00 00 05 01 0b 00 00 00 |........ ........|
0120 05 01 02 00 00 00 d1 05-01 02 00 00 00 05 01 11 |........ ........|
0130 00 00 00 05 01 03 00 00-00 d1 05 01 02 00 00 00 |........ ........|
0140 05 01 12 00 00 00 05 01-03 00 00 00 d1 05 01 02 |........ ........|
0150 00 00 00 05 01 13 00 00-00 05 01 03 00 00 00 d1 |........ ........|
0160 05 01 02 00 00 00 05 01-14 00 00 00 05 01 03 00 |........ ........|
0170 00 00 d1 05 01 02 00 00-00 05 01 17 00 00 00 05 |........ ........|
0180 01 03 00 00 00 d1 05 01-02 00 00 00 05 01 18 00 |........ ........|
0190 00 00 05 01 03 00 00 00-d1 05 01 02 00 00 00 05 |........ ........|
01a0 01 19 00 00 00 05 01 05-00 00 00 d1 05 01 02 00 |........ ........|
01b0 00 00 05 01 1a 00 00 00-05 01 04 00 00 00 d1 05 |........ ........|
01c0 01 02 00 00 00 05 01 1b-00 00 00 05 01 02 00 00 |........ ........|
01d0 00 ff 11 00 c1 00 13 00-00 00 79 00 00 00 00 fe |........ ..y.....|
01e0 00 00 e0 00 13 00 00 00- |........|


15:58:47 processing result tokens. marker is 81(TDS7_RESULT)
tds_get_string: reading 28 from wire to give 14 to client.
15:58:47 tds7_get_data_info:1445:
colname = equity_type_id (14 bytes)
type = 108 (numeric)
server's type = 108 (numeric)
column_varint_size = 1
column_size = 17 (17 on server)
tds_get_string: reading 18 from wire to give 9 to client.
15:58:47 tds7_get_data_info:1445:
colname = factor_id (9 bytes)
type = 108 (numeric)
server's type = 108 (numeric)
column_varint_size = 1
column_size = 17 (17 on server)
tds_get_string: reading 28 from wire to give 14 to client.
15:58:47 tds7_get_data_info:1445:
colname = series_type_id (14 bytes)
type = 108 (numeric)
server's type = 108 (numeric)
column_varint_size = 1
column_size = 17 (17 on server)
15:58:47 ct_results() process_result_tokens returned 1 (type 4049)
15:58:47 processing result tokens. marker is d1(ROW)
15:58:47 ct_results() process_result_tokens returned 1 (type 4040)
15:58:47 ct_res_info()
15:58:47 ct_res_info(): Number of columns is 3
15:58:47 ct_describe()
15:58:47 _ct_get_client_type(type 108, user 0, size 17)
15:58:47 ct_describe() datafmt->datatype = 7 server type 108
15:58:47 ct_bind() datafmt count = 1 column_number = 1
15:58:47 ct_describe()
15:58:47 _ct_get_client_type(type 108, user 0, size 17)
15:58:47 ct_describe() datafmt->datatype = 7 server type 108
15:58:47 ct_bind() datafmt count = 1 column_number = 2
15:58:47 ct_describe()
15:58:47 _ct_get_client_type(type 108, user 0, size 17)
15:58:47 ct_describe() datafmt->datatype = 7 server type 108
15:58:47 ct_bind() datafmt count = 1 column_number = 3
15:58:47 ct_fetch()
15:58:47 processing row tokens. marker is d1(ROW)
15:58:47 processing row. column is 0 varint size = 1
15:58:47 processing row. column size is 5
15:58:47 clearing column 0 NULL bit
15:58:47 swapping numeric data...
15:58:47 processing row. column is 1 varint size = 1
15:58:47 processing row. column size is 5
15:58:47 clearing column 1 NULL bit
15:58:47 swapping numeric data...
15:58:47 processing row. column is 2 varint size = 1
15:58:47 processing row. column size is 5
15:58:47 clearing column 2 NULL bit
15:58:47 swapping numeric data...
15:58:47 inside ct_fetch()process_row_tokens returned 1
15:58:47 _ct_bind_data()
15:58:47 _ct_bind_data(): column_type: 108 column_len: 35
15:58:47 _ct_get_server_type(7)
15:58:47 _ct_get_client_type(type 108, user 0, size 17)
15:58:49 cs_convert()
15:58:49 _ct_get_server_type(7)
15:58:49 _ct_get_server_type(7)
15:58:49 cs_convert() srctype = 108 (35) desttype = 108 (17)
15:58:49 cs_convert() srctype = desttype
15:58:49 cs_convert-result = 1
15:58:49
convert failed for 7
15:58:49 _ct_bind_data(): column_type: 108 column_len: 35
15:58:49 _ct_get_server_type(7)
15:58:49 _ct_get_client_type(type 108, user 0, size 17)
15:58:50 cs_convert()
15:58:50 _ct_get_server_type(7)
15:58:50 _ct_get_server_type(7)
15:58:50 cs_convert() srctype = 108 (35) desttype = 108 (17)
15:58:50 cs_convert() srctype = desttype
15:58:50 cs_convert-result = 1
15:58:50
convert failed for 7
15:58:50 _ct_bind_data(): column_type: 108 column_len: 35
15:58:50 _ct_get_server_type(7)
15:58:50 _ct_get_client_type(type 108, user 0, size 17)
15:58:52 cs_convert()
15:58:52 _ct_get_server_type(7)
15:58:52 _ct_get_server_type(7)
15:58:52 cs_convert() srctype = 108 (35) desttype = 108 (17)
15:58:52 cs_convert() srctype = desttype
15:58:52 cs_convert-result = 1
15:58:52
convert failed for 7
15:58:54 ct_cancel()
Sending packet @ 15:58:54
0000 06 01 00 08 00 00 01 00- |........|


15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is d1(ROW)
15:58:54 processing row. column is 0 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 0 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 1 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 1 NULL bit
15:58:54 swapping numeric data...
15:58:54 processing row. column is 2 varint size = 1
15:58:54 processing row. column size is 5
15:58:54 clearing column 2 NULL bit
15:58:54 swapping numeric data...
15:58:54 tds_process_default_tokens() marker is ff(DONEINPROC)
15:58:54 tds_process_end: more_results = 1
15:58:54 was_cancelled = 0
15:58:54 error = 0
15:58:54 done_count_valid = 1
15:58:54 rows_affected = 19
15:58:54 tds_process_default_tokens() marker is 79(RETURNSTATUS)
15:58:54 tds_process_default_tokens: return status is 0
15:58:54 tds_process_default_tokens() marker is fe(DONEPROC)
15:58:54 tds_process_end: more_results = 0
15:58:54 was_cancelled = 0
15:58:54 error = 0
15:58:54 done_count_valid = 0
15:58:54 tds_process_end() state set to TDS_IDLE
Received header @ 15:58:54
0000 04 01 00 11 00 3c 01 00- |.....<..|


Received packet @ 15:58:54
0000 fd 20 00 fd 00 00 00 00-00 |. ...... .|


15:58:54 tds_process_end: more_results = 0
15:58:54 was_cancelled = 1
15:58:54 error = 0
15:58:54 done_count_valid = 0
15:58:54 tds_process_end() state set to TDS_IDLE
15:58:54 ct_cmd_drop()
15:58:54 ct_close()
15:58:54 ct_con_drop()
15:58:54 ct_exit()


Thanx a lot for your help

David Nsengiyumva

Software Developer
Tel: +27 21 464 7215
Cel: +27 73 351 3975
Fax: +27 21 464 7201
http://www.finsolutions.co.za

CONFIDENTIALITY CAUTION
This page and any accompanying documents contain privileged and confidential
information for the specific individual to whom it is addressed, and are
protected by law. If the reader is not the intended recipient, you are
hereby notified that any review, dissemination, distribution or copying or
the taking of any action based on the contents of this communication is
strictly prohibited. If you have received this communication in error,
please desist from reading the contents, notify us immediately and destroy
the communication.







Archive powered by MHonArc 2.6.24.

Top of Page