ClickHouse String/FixedString types store binary data, but provider supports only UTF8 string representation.
Issues with current implementation:
it is not possible to use byte[] values. E.g. BulkCopy will throw ClickHouseHandledException : Unable to cast object of type 'System.Byte[]' to type 'System.String'. ----> System.InvalidCastException : Unable to cast object of type 'System.Byte[]' to type 'System.String
conversion of byte[] to string could lead to data loss. E.g. 0xFF will be 0xEF 0xBF 0xBD after binary->string->binary conversion
Hmm, actually, I think only issue here is that byte[] is not recognized as valid value (see exception above). It is possible to access raw data using GetFieldValue<byte[]>(x) method.
ClickHouse String/FixedString types store binary data, but provider supports only UTF8 string representation.
Issues with current implementation:
byte[]
values. E.g. BulkCopy will throwClickHouseHandledException : Unable to cast object of type 'System.Byte[]' to type 'System.String'. ----> System.InvalidCastException : Unable to cast object of type 'System.Byte[]' to type 'System.String
byte[]
to string could lead to data loss. E.g.0xFF
will be0xEF 0xBF 0xBD
after binary->string->binary conversion