diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-04 12:15:05 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-04 12:15:05 +0000 |
commit | 46651ce6fe013220ed397add242004d764fc0153 (patch) | |
tree | 6e5299f990f88e60174a1d3ae6e48eedd2688b2b /src/interfaces/ecpg/test/connect/test2.pgc | |
parent | Initial commit. (diff) | |
download | postgresql-14-upstream.tar.xz postgresql-14-upstream.zip |
Adding upstream version 14.5.upstream/14.5upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/interfaces/ecpg/test/connect/test2.pgc')
-rw-r--r-- | src/interfaces/ecpg/test/connect/test2.pgc | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/interfaces/ecpg/test/connect/test2.pgc b/src/interfaces/ecpg/test/connect/test2.pgc new file mode 100644 index 0000000..f31a7f9 --- /dev/null +++ b/src/interfaces/ecpg/test/connect/test2.pgc @@ -0,0 +1,46 @@ +/* + * this file tests multiple connections to databases and switches + * between them. + */ + +#include <stdlib.h> +#include <string.h> +#include <stdlib.h> +#include <stdio.h> + +exec sql include ../regression; + +int +main(void) +{ +exec sql begin declare section; + char id[200]; + char res[200]; +exec sql end declare section; + + ECPGdebug(1, stderr); + + strcpy(id, "first"); + exec sql connect to ecpg2_regression as :id; + exec sql connect to REGRESSDB1 as second; + + /* this selects from "second" which was opened last */ + exec sql select current_database() into :res; + exec sql at first select current_database() into :res; + exec sql at second select current_database() into :res; + + exec sql set connection first; + exec sql select current_database() into :res; + + /* this will disconnect from "first" */ + exec sql disconnect; + exec sql select current_database() into :res; + + /* error here since "first" is already disconnected */ + exec sql disconnect :id; + + /* disconnect from "second" */ + exec sql disconnect; + + return 0; +} |