У нас есть таблица Azure SQL, которую я перемещаю из традиционной базы данных в таблицу Azure Synapse Analytics (DW) для долгосрочного хранения, и поэтому ее можно удалить из нашей производственной базы данных. Это системная таблица для устаревшей системы, которую мы использовали (Salesforce). У меня есть столбец в этой таблице в БД, который является varchar (max), и его массивный. MAX (LEN (FIELD) - 1585521. Я пробовал использовать фабрику данных для перемещения таблицы в DW, но это не помогло в этом массивном столбце. Я смоделировал таблицу DW как зеркало производственной таблицы БД, но она не загружается и пытался несколько раз. Я изменил столбец DW, который не работает, на nvarchar (max), но он все еще не работает (думал, что это может быть не-юникод, вызывающий сбой). Любые идеи? Это сбивает меня с толку, потому что данные существуют в нашей производственной БД, но не будет красиво и спокойно перемещаться в наш ХД.
Я пытался несколько раз и получил эти сообщения об ошибках (второе после изменения столбца DW с varchar (max) на nvarchar (max):
HadoopSqlException: Arithmetic overflow error converting expression to data type NVARCHAR."}
HadoopExecutionException: Too long string in column [-1]: Actual len = [4977]. MaxLEN=[4000]