Preparação de dados de entrada
Se seus dados de entrada não forem compatíveis com as colunas da tabela que os receberão, o comando COPY falhará.
Use as seguintes diretrizes para ajudar a garantir que seus dados de entrada sejam válidos:
-
Seus dados podem conter somente caracteres UTF-8 com até quatro bytes de comprimento.
-
Verifique que as strings CHAR e VARCHAR são mais longas que os comprimentos das colunas correspondentes. Strings VARCHAR são medidas em bytes, não caracteres, portanto, por exemplo, uma string de quatro caracteres chineses que ocupam quatro bytes cada requer uma coluna VARCHAR(16).
-
Caracteres multibyte podem ser usados somente com colunas VARCHAR. Verifique que os caracteres multibyte não tenham mais que quatro bytes de comprimento.
-
Verifique que os dados para colunas CHAR contenham somente caracteres de único byte.
-
Não inclua quaisquer caracteres ou sintaxe especial para indicar o último campo em um registro. Este campo pode ser um delimitador.
-
Se seus dados incluem terminais nulos, também chamados de NUL (UTF-8 0000) ou zero binário (0x000), você pode carregar esses caracteres como NULLS em colunas CHAR ou VARCHAR usando a opção NULL AS no comando COPY:
null as '\0'
ounull as '\000'
. Se você não utilizar NULL AS, terminais nulos farão com que seu COPY falhe. -
Se suas strings contêm caracteres especiais, tais como delimitadores e novas linhas inseridas, use a opção ESCAPE com o comando COPY.
-
Verifique se todas as aspas simples e duplas correspondem adequadamente.
-
Verifique que as strings de ponto flutuante estejam no formato de ponto flutuante padrão, tal como 12.123, ou no formato exponencial, tal como 1.0E4.
-
Verifique que todas as strings de timestamp e data sigam as especificações para Strings DATEFORMAT e TIMEFORMAT. O formato de timestamp padrão é AAAA-MM-DD hh:mm:ss e formato de data padrão é AAAA-MM-DD.
-
Para obter mais informações sobre os limites e limitações dos tipos de dados individuais, consulte Tipos de dados. Para obter mais informações sobre erros de caracteres multibyte, consulte Erros no carregamento de caracteres multibyte.