I am using CData Sync to convert my table in SQL Server to MariaDB. The data type I have for some of my columns (including my primary key) is nvarchar(255) and when I try to convert it using CData sync to a MariaDB table, it throws an error stating: #1170 error (42000) blob/Text Column Used in key specification without a key length. In the table mapping section in CData I see the column data types are being mapped correctly (nvarchar to varchar) but I think because the length on the source table is nvarchar(255) it's converting to varchar(510)? Which is too big so it's reading varchar as a TEXT/BLOB instead? None of my columns are specified as TEXT/BLOB so I'm not sure where CData Sync is getting that from. How do I convert nvarchar(255) to varchar? Would it be varchar(255) or varchar(512)?
varchar(510)is the solution that accounts for all the values possibly stored there. What character set do you have in these columns? What length of the 255 "byte-pairs" are you using? What character set is being used in mariadb as the conversion type? The conversion shows CData Sync is definately creating a blob/text column.