Treatment of bit(n) type in mysql where n>1

We have been qualifying MySQL 5.7 and found that the bit type is handled differently in Ignition for bit(n) where n>1. We went back and checked MySQL 5.6 and found this also to be the case.

Assume a create table statement such as

create table test (id int(11), b1 bit(1) default b'0', b3 bit(3) default b'111')

when I populate this table with a few rows and issue the query

select * from test

I get the following in MySQL Workbench

1, 0, 7 2, 0, 7 3, 0, 7

In the Ignition database query browser, I get something like

1,false,[B@1dcaaa10 2,false,[B@4dc713c3 3,false,[B@709c8237

I get the same result with the following query.

select id,b1,cast(b3 as binary) from test

If I use the following, the string for the third column is empty.

select id,b1,cast(b3 as char) from test

I tried using the same driver with a Java program, and ResultSet.getString(“b3”) returns “7”.

Ignition 7.8.2
mysql connector/j 5.1.38
java 1.8.0_91

The JDBC docs say bit(n) for n>1 is represented as a byte[]. I’m not sure in what context you’re trying to use this or if that’s helpful or not.