diff --git a/src/test/regress/expected/copy2.out b/src/test/regress/expected/copy2.out index 5f3685e9ef..090ef6c7a8 100644 --- a/src/test/regress/expected/copy2.out +++ b/src/test/regress/expected/copy2.out @@ -77,6 +77,23 @@ COPY x from stdin (encoding 'sql_ascii', encoding 'sql_ascii'); ERROR: conflicting or redundant options LINE 1: COPY x from stdin (encoding 'sql_ascii', encoding 'sql_ascii... ^ +-- incorrect options +COPY x to stdin (format BINARY, delimiter ','); +ERROR: cannot specify DELIMITER in BINARY mode +COPY x to stdin (format BINARY, null 'x'); +ERROR: cannot specify NULL in BINARY mode +COPY x to stdin (format TEXT, force_quote(a)); +ERROR: COPY force quote available only in CSV mode +COPY x from stdin (format CSV, force_quote(a)); +ERROR: COPY force quote only available using COPY TO +COPY x to stdout (format TEXT, force_not_null(a)); +ERROR: COPY force not null available only in CSV mode +COPY x to stdin (format CSV, force_not_null(a)); +ERROR: COPY force not null only available using COPY FROM +COPY x to stdout (format TEXT, force_null(a)); +ERROR: COPY force null available only in CSV mode +COPY x to stdin (format CSV, force_null(a)); +ERROR: COPY force null only available using COPY FROM -- too many columns in column list: should fail COPY x (a, b, c, d, e, d, c) from stdin; ERROR: column "d" specified more than once diff --git a/src/test/regress/sql/copy2.sql b/src/test/regress/sql/copy2.sql index b3c16af48e..b0de82c3aa 100644 --- a/src/test/regress/sql/copy2.sql +++ b/src/test/regress/sql/copy2.sql @@ -67,6 +67,16 @@ COPY x from stdin (force_null (a), force_null (b)); COPY x from stdin (convert_selectively (a), convert_selectively (b)); COPY x from stdin (encoding 'sql_ascii', encoding 'sql_ascii'); +-- incorrect options +COPY x to stdin (format BINARY, delimiter ','); +COPY x to stdin (format BINARY, null 'x'); +COPY x to stdin (format TEXT, force_quote(a)); +COPY x from stdin (format CSV, force_quote(a)); +COPY x to stdout (format TEXT, force_not_null(a)); +COPY x to stdin (format CSV, force_not_null(a)); +COPY x to stdout (format TEXT, force_null(a)); +COPY x to stdin (format CSV, force_null(a)); + -- too many columns in column list: should fail COPY x (a, b, c, d, e, d, c) from stdin;