Как вы знаете, у нас есть два типа VARCHAR2 в Oracleдлина столбца при миграции данных VARCHAR2 из Oracle
e.g. COL1 VARCHAR2(20 BYTE)
COL2 VARCHAR2(20 CHAR)
Когда мы переносим эти данные в другой другой базе данных (например, Netezza), что должно быть правильной длины.
COL1 should be 20
COL2 should be 20 OR 20X4= 80 ?
, потому что 1 CHAR = 4 БАЙТ
Благодаря
Проверьте это в источнике db. выберите data_length, decode (char_used, 'C', 'CHAR', 'B', 'BYTE') из user_tab_cols, где table_name = 'table' и column_name = 'column'; –
Это правильная длина, которую мы должны перенести? – SMPH
Это длина, которая использовалась при создании таблицы. Чтобы вычислить, сколько байтов используется для хранения одного символа. Выполните в случайной строке из этой таблицы и вычислите lengthb (col)/length (col). –