mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-08-30 04:47:20 +02:00
This new option terminates the other sessions connected to the target database and then drop it. To terminate other sessions, the current user must have desired permissions (same as pg_terminate_backend()). We don't allow to terminate the sessions if prepared transactions, active logical replication slots or subscriptions are present in the target database. Author: Pavel Stehule with changes by me Reviewed-by: Dilip Kumar, Vignesh C, Ibrar Ahmed, Anthony Nowocien, Ryan Lambert and Amit Kapila Discussion: https://postgr.es/m/CAP_rwwmLJJbn70vLOZFpxGw3XD7nLB_7+NKz46H5EOO2k5H7OQ@mail.gmail.com
36 lines
1.3 KiB
C
36 lines
1.3 KiB
C
/*-------------------------------------------------------------------------
|
|
*
|
|
* dbcommands.h
|
|
* Database management commands (create/drop database).
|
|
*
|
|
*
|
|
* Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group
|
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
*
|
|
* src/include/commands/dbcommands.h
|
|
*
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
#ifndef DBCOMMANDS_H
|
|
#define DBCOMMANDS_H
|
|
|
|
#include "access/xlogreader.h"
|
|
#include "catalog/objectaddress.h"
|
|
#include "lib/stringinfo.h"
|
|
#include "nodes/parsenodes.h"
|
|
|
|
extern Oid createdb(ParseState *pstate, const CreatedbStmt *stmt);
|
|
extern void dropdb(const char *dbname, bool missing_ok, bool force);
|
|
extern void DropDatabase(ParseState *pstate, DropdbStmt *stmt);
|
|
extern ObjectAddress RenameDatabase(const char *oldname, const char *newname);
|
|
extern Oid AlterDatabase(ParseState *pstate, AlterDatabaseStmt *stmt, bool isTopLevel);
|
|
extern Oid AlterDatabaseSet(AlterDatabaseSetStmt *stmt);
|
|
extern ObjectAddress AlterDatabaseOwner(const char *dbname, Oid newOwnerId);
|
|
|
|
extern Oid get_database_oid(const char *dbname, bool missing_ok);
|
|
extern char *get_database_name(Oid dbid);
|
|
|
|
extern void check_encoding_locale_matches(int encoding, const char *collate, const char *ctype);
|
|
|
|
#endif /* DBCOMMANDS_H */
|