mirror of
https://github.com/postgres/postgres.git
synced 2025-11-07 19:06:32 +03:00
pg_class has a relnamespace column. You can create and access tables
in schemas other than the system namespace; however, there's no search path yet, and not all operations work yet on tables outside the system namespace.
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $Id: parsenodes.h,v 1.164 2002/03/22 02:56:36 tgl Exp $
|
||||
* $Id: parsenodes.h,v 1.165 2002/03/26 19:16:53 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -17,14 +17,6 @@
|
||||
#include "nodes/primnodes.h"
|
||||
|
||||
|
||||
typedef enum InhOption
|
||||
{
|
||||
INH_NO, /* Do NOT scan child tables */
|
||||
INH_YES, /* DO scan child tables */
|
||||
INH_DEFAULT /* Use current SQL_inheritance option */
|
||||
} InhOption;
|
||||
|
||||
|
||||
/*****************************************************************************
|
||||
* Query Tree
|
||||
*****************************************************************************/
|
||||
@@ -49,7 +41,7 @@ typedef struct Query
|
||||
* statement */
|
||||
|
||||
int resultRelation; /* target relation (index into rtable) */
|
||||
struct RangeVar *into; /* target relation or portal (cursor)
|
||||
RangeVar *into; /* target relation or portal (cursor)
|
||||
* for portal just name is meaningful */
|
||||
bool isPortal; /* is this a retrieve into portal? */
|
||||
bool isBinary; /* binary portal? */
|
||||
@@ -368,39 +360,6 @@ typedef struct SortGroupBy
|
||||
Node *node; /* Expression */
|
||||
} SortGroupBy;
|
||||
|
||||
/*
|
||||
* Alias -
|
||||
* specifies an alias for a range variable; the alias might also
|
||||
* specify renaming of columns within the table.
|
||||
*/
|
||||
typedef struct Alias
|
||||
{
|
||||
NodeTag type;
|
||||
char *aliasname; /* aliased rel name (never qualified) */
|
||||
List *colnames; /* optional list of column aliases */
|
||||
/* Note: colnames is a list of Value nodes (always strings) */
|
||||
} Alias;
|
||||
|
||||
/*
|
||||
* RangeVar - range variable, used in FROM clauses
|
||||
*
|
||||
* Also used to represent table names in utility statements; there, the alias
|
||||
* field is not used, and inhOpt shows whether to apply the operation
|
||||
* recursively to child tables. In some contexts it is also useful to carry
|
||||
* a TEMP table indication here.
|
||||
*/
|
||||
typedef struct RangeVar
|
||||
{
|
||||
NodeTag type;
|
||||
char *catalogname; /* the catalog (database) name, or NULL */
|
||||
char *schemaname; /* the schema name, or NULL */
|
||||
char *relname; /* the relation/sequence name */
|
||||
InhOption inhOpt; /* expand rel by inheritance?
|
||||
* recursively act on children? */
|
||||
bool istemp; /* is this a temp relation/sequence? */
|
||||
Alias *alias; /* table alias & optional column aliases */
|
||||
} RangeVar;
|
||||
|
||||
/*
|
||||
* RangeSubselect - subquery appearing in a FROM clause
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user