pg-structure / Constraint
# Class: Constraint
Abstract class which represent a database constraint. Provides attributes and methods related to constraint.
# Hierarchy
-  ↳ Constraint ↳↳ ForeignKey ↳↳ PrimaryKey 
# Properties
# comment
• Optional Readonly comment: undefined | string
Comment of the database object defined in database including {@link DbObject#commentData comment data}.
Inherited from: DbObject.comment
Defined in: pg-structure/base/db-object.ts:75
# name
• Readonly name: string
Name of the database object.
Defined in: pg-structure/base/db-object.ts:42
# schema
• Readonly Abstract schema: Schema
Schema of the object.
Inherited from: DbObject.schema
Defined in: pg-structure/base/db-object.ts:25
# Accessors
# commentData
• get commentData(): undefined | null | string | number | boolean | JSONObject | JSONArray
Data which is extracted from database object's comment. Data is extracted from text between special case-insensitive tag
(default: [pg-structure][/pg-structure]) and converted to JavaScript object using JSON5 (opens new window).
Token name can be specified by using commentDataToken arguments.
For details of JSON5 (opens new window), see it's web site: https://json5.org (opens new window).
# Example
// "Account details. [pg-structure]{ extraData: 2 }[/pg-structure] Also used for logging."
table.comment;               // "Account details. [pg-structure]{ extraData: 2 }[/pg-structure] Also used for logging."
table.commentWithoutData;    // "Account details.  Also used for logging."
table.commentData;           // { extraData: 2 }
table.commentData.extraData; // 2
Returns: undefined | null | string | number | boolean | JSONObject | JSONArray
Defined in: pg-structure/base/db-object.ts:102
# commentWithoutData
• get commentWithoutData(): undefined | string
Description or comment of the database object defined in database. If comment contains {@link DbObject#commentData comment data}, it is removed.
# Example
// "Account details. [pg-structure]{ extraData: 2 }[/pg-structure] Also used for logging."
table.commentWithoutData;    // "Account details.  Also used for logging."
Returns: undefined | string
Defined in: pg-structure/base/db-object.ts:85
# db
• get db(): Db
Database of the database object.
Returns: Db
Defined in: pg-structure/base/db-object.ts:68
# fullCatalogName
• get fullCatalogName(): string
Full name of the database object including database name.
Returns: string
Defined in: pg-structure/base/db-object.ts:35
# fullName
• Abstractget fullName(): string
Full name of the database object including parent name.
Returns: string
Defined in: pg-structure/base/db-object.ts:30
# nameCaseType
• get nameCaseType(): CaseType
Letter casing (i.e snakeCase or camelCase) of the database object name.
# Example
const name = entity.name;                        // ProductDetail
const caseType = entity.nameCaseType;            // camelCase
const otherEntity = otherEntity.name;            // member_protocol
const otherCaseType = otherEntity.nameCaseType;  // snakeCase
Returns: CaseType
Defined in: pg-structure/base/db-object.ts:54
# separator
• get separator(): string
Separator used in database object name. Empty string for came case and underscore for (_) snake case.
Returns: string
Defined in: pg-structure/base/db-object.ts:61
← CompositeType Db →