@ -259,11 +259,11 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query);
CreateOpFamilyStmt AlterOpFamilyStmt CreatePLangStmt
CreateOpFamilyStmt AlterOpFamilyStmt CreatePLangStmt
CreateSchemaStmt CreateSeqStmt CreateStmt CreateStatsStmt CreateTableSpaceStmt
CreateSchemaStmt CreateSeqStmt CreateStmt CreateStatsStmt CreateTableSpaceStmt
CreateFdwStmt CreateForeignServerStmt CreateForeignTableStmt
CreateFdwStmt CreateForeignServerStmt CreateForeignTableStmt
CreateAssertStmt CreateTransformStmt CreateTrigStmt CreateEventTrigStmt
CreateAssertion Stmt CreateTransformStmt CreateTrigStmt CreateEventTrigStmt
CreateUserStmt CreateUserMappingStmt CreateRoleStmt CreatePolicyStmt
CreateUserStmt CreateUserMappingStmt CreateRoleStmt CreatePolicyStmt
CreatedbStmt DeclareCursorStmt DefineStmt DeleteStmt DiscardStmt DoStmt
CreatedbStmt DeclareCursorStmt DefineStmt DeleteStmt DiscardStmt DoStmt
DropOpClassStmt DropOpFamilyStmt DropPLangStmt DropStmt
DropOpClassStmt DropOpFamilyStmt DropPLangStmt DropStmt
DropAssertStmt Drop CastStmt DropRoleStmt
DropCastStmt DropRoleStmt
DropdbStmt DropTableSpaceStmt
DropdbStmt DropTableSpaceStmt
DropTransformStmt
DropTransformStmt
DropUserMappingStmt ExplainStmt FetchStmt
DropUserMappingStmt ExplainStmt FetchStmt
@ -860,7 +860,7 @@ stmt :
| CopyStmt
| CopyStmt
| CreateAmStmt
| CreateAmStmt
| CreateAsStmt
| CreateAsStmt
| CreateAssertStmt
| CreateAssertion Stmt
| CreateCastStmt
| CreateCastStmt
| CreateConversionStmt
| CreateConversionStmt
| CreateDomainStmt
| CreateDomainStmt
@ -896,7 +896,6 @@ stmt :
| DeleteStmt
| DeleteStmt
| DiscardStmt
| DiscardStmt
| DoStmt
| DoStmt
| DropAssertStmt
| DropCastStmt
| DropCastStmt
| DropOpClassStmt
| DropOpClassStmt
| DropOpFamilyStmt
| DropOpFamilyStmt
@ -5639,43 +5638,19 @@ enable_trigger:
/*****************************************************************************
/*****************************************************************************
*
*
* QUERIES :
* QUERY :
* CREATE ASSERTION ...
* CREATE ASSERTION ...
* DROP ASSERTION ...
*
*
*****************************************************************************/
*****************************************************************************/
CreateAssertStmt:
CreateAssertionStmt:
CREATE ASSERTION name CHECK '(' a_expr ')'
CREATE ASSERTION any_name CHECK '(' a_expr ')' ConstraintAttributeSpec
ConstraintAttributeSpec
{
{
CreateTrigStmt *n = makeNode(CreateTrigStmt);
n->trigname = $3;
n->args = list_make1($6);
n->isconstraint = true;
processCASbits($8, @8, "ASSERTION",
&n->deferrable, &n->initdeferred, NULL,
NULL, yyscanner);
ereport(ERROR,
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
errmsg("CREATE ASSERTION is not yet implemented")));
errmsg("CREATE ASSERTION is not yet implemented")));
$$ = (Node *)n;
$$ = NULL;
}
;
DropAssertStmt:
DROP ASSERTION name opt_drop_behavior
{
DropStmt *n = makeNode(DropStmt);
n->objects = NIL;
n->behavior = $4;
n->removeType = OBJECT_TRIGGER; /* XXX */
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
errmsg("DROP ASSERTION is not yet implemented")));
$$ = (Node *) n;
}
}
;
;