diff options
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/regress/expected/psql.out | 31 | ||||
-rw-r--r-- | src/test/regress/sql/psql.sql | 14 |
2 files changed, 45 insertions, 0 deletions
diff --git a/src/test/regress/expected/psql.out b/src/test/regress/expected/psql.out index a7f5700edc1..5bdae290dce 100644 --- a/src/test/regress/expected/psql.out +++ b/src/test/regress/expected/psql.out @@ -98,6 +98,37 @@ two | 2 1 | 2 (1 row) +-- \bind (extended query protocol) +SELECT 1 \bind \g + ?column? +---------- + 1 +(1 row) + +SELECT $1 \bind 'foo' \g + ?column? +---------- + foo +(1 row) + +SELECT $1, $2 \bind 'foo' 'bar' \g + ?column? | ?column? +----------+---------- + foo | bar +(1 row) + +-- errors +-- parse error +SELECT foo \bind \g +ERROR: column "foo" does not exist +LINE 1: SELECT foo + ^ +-- tcop error +SELECT 1 \; SELECT 2 \bind \g +ERROR: cannot insert multiple commands into a prepared statement +-- bind error +SELECT $1, $2 \bind 'foo' \g +ERROR: bind message supplies 1 parameters, but prepared statement "" requires 2 -- \gset select 10 as test01, 20 as test02, 'Hello' as test03 \gset pref01_ \echo :pref01_test01 :pref01_test02 :pref01_test03 diff --git a/src/test/regress/sql/psql.sql b/src/test/regress/sql/psql.sql index 1149c6a839e..8732017e51e 100644 --- a/src/test/regress/sql/psql.sql +++ b/src/test/regress/sql/psql.sql @@ -45,6 +45,20 @@ SELECT 1 as one, 2 as two \g (format=csv csv_fieldsep='\t') SELECT 1 as one, 2 as two \gx (title='foo bar') \g +-- \bind (extended query protocol) + +SELECT 1 \bind \g +SELECT $1 \bind 'foo' \g +SELECT $1, $2 \bind 'foo' 'bar' \g + +-- errors +-- parse error +SELECT foo \bind \g +-- tcop error +SELECT 1 \; SELECT 2 \bind \g +-- bind error +SELECT $1, $2 \bind 'foo' \g + -- \gset select 10 as test01, 20 as test02, 'Hello' as test03 \gset pref01_ |