and according to the source code of the rcdhandler
RDCHandler:
For i = 0 To cols - 1
Dim ct As Int = rsmd.RunMethod("getColumnType", Array(i + 1))
'check whether it is a blob field
If ct = -2 Or ct = 2004 Or ct = -3 Or ct = -4 Then
row(i) = rs.GetBlob2(i)
Else if ct = 2 Or ct = 3 Then
row(i) = rs.GetDouble2(i)
Else If DateTimeMethods.ContainsKey(ct) Then
Dim SQLTime As JavaObject = jrs.RunMethodJO(DateTimeMethods.Get(ct), Array(i + 1))
If SQLTime.IsInitialized Then
row(i) = SQLTime.RunMethod("getTime", Null)
Else
row(i) = Null
End If
Else
row(i) = jrs.RunMethod("[B]getObject[/B]", Array(i + 1))
End If
Next
getObject is used if it is neither double nor date; (separates -2, -3, -4, 2004 as blob; 2 and 3 as doubles; dates and rest are getObject). the values that are returned as LONGVARBINARY do not have a special handling, when in mySql you have unsigned Integer the rcdhandler returns an object.
changing the query from DATA_TYPE to COLUMN_TYPE partially solves the problem returning "int usigned" as a string literal.