Re: [GRAYMAIL] Re: "Fix affected rows after insert with prepared query" side effect
John Kendall <[email protected]>
| Newsgroups | gmane.comp.db.tds.freetds |
|---|---|
| Message-ID | <[email protected]> |
> On May 10, 2016, at 3:34 PM, Frediano Ziglio <[email protected]> wrote: > > 2016-05-10 22:31 GMT+01:00 John Kendall <[email protected]>: >> It appears the patch for this ("fix ct-library rows count") has broken compute in ctlib: >> >> >> select col=1 into #tbl insert #tbl values (2) select * from #tbl compute sum(col) >> (1 row affected) >> (1 row affected) >> col >> ----------- >> 1 >> 2 >> 2 >> >> (3 rows affected) >> >> dblib (and ctlib RC1) does the expected: >> >> select col=1 into #tbl insert #tbl values (2) select * from #tbl compute sum(col) >> (1 row affected) >> (1 row affected) >> col >> ----------- >> 1 >> 2 >> sum >> =========== >> 3 >> >> (3 rows affected) >> >> >> Sorry to keep finding things! >> >> John >> >> > > Can you put some more detailed examples? Which program did you use? > > Frediano I'm using sqsh. The compute clause should return an extra result line. In the example I have given above, the table is a single column table with two rows with values 1 and 2. Adding the compute sum clause to the select should return a compute result of 3, instead it is returns an extra copy of the last row. My example is not a special case, no compute (sum, max, min, avg, etc) results seem to be returning from any queries with a compute clause. I never saw this problem before RC4. Backing out the 'fix ct-library rows count' patch on ct.c makes it return the expected result. John > _______________________________________________ > FreeTDS mailing list > [email protected] > http://lists.ibiblio.org/mailman/listinfo/freetds