Hi Esa, the integer null in j904 have been changed to IMIN (the integer you noticed) so that the data type will not promote to floating point when there are null values in the data. You can change the representation of null or restore it to j903 using the ddconfig command, specifically, putting this the the start of script. ddconfig 'integernull';__ NB. restore to previous behavior there is another parameter 'numericnull' for specifying null of floating points.
On Fri, Sep 2, 2022 at 7:16 PM esal <esa.li...@gmail.com> wrote: > Hello > > I came across a problem with nulls and SQL Server data types tinyint, > smallint and int with J9.03 newest ODBC/Data Driver (Windows 10, SQL > Server 2012/2019, ODBC Driver 17 for SQL Server) . > > bigint is ok, also no problems in J9.02. > > Does anyone have similar problems with different scenarios? > > Best Regards, > > Esa > > *J9.03* > > require'dd' > ]ch=.ddcon 'dsn=tes_info' > 2411772141600 > 'create table #a(b int, c char(8))'ddsql ch > 0 > 'insert #a values(1,''one'')'ddsql ch > 0 > 'insert #a values(2,''two'')'ddsql ch > 0 > 'insert #a values(null,null)'ddsql ch > 0 > ]sh=.'select * from #a'ddsel ch > 2411772252304 > ddfch sh,_1 > ┌────────────────────┬────────┐ > │ 1│one │ > │ 2│two │ > │_9223372036854775808│ │ > └────────────────────┴────────┘ > dddis ch > 0 > > --- > > *J9.02* > > require'dd' > ]ch=.ddcon 'dsn=tes_info' > 2631811462080 > 'create table #a(b int, c char(8))'ddsql ch > 0 > 'insert #a values(1,''one'')'ddsql ch > 0 > 'insert #a values(2,''two'')'ddsql ch > 0 > 'insert #a values(null,null)'ddsql ch > 0 > ]sh=.'select * from #a'ddsel ch > 2631811463168 > ddfch sh,_1 > ┌──┬────────┐ > │ 1│one │ > │ 2│two │ > │__│ │ > └──┴────────┘ > dddis ch > 0 > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm