# Class: DbObject
Abstract base class for all database objects.
# Hierarchy
# Properties
# Optional
comment
• comment? : undefined | string
Defined in pg-structure/base/db-object.ts:75
Comment of the database object defined in database including {@link DbObject#commentData comment data}.
# name
• name: string
Defined in pg-structure/base/db-object.ts:42
Name of the database object.
# Abstract
schema
• schema: Schema
Defined in pg-structure/base/db-object.ts:25
Schema of the object.
# Accessors
# commentData
• get commentData(): JSONData | undefined
Defined in pg-structure/base/db-object.ts:102
Data which is extracted from database object's comment. Data is extracted from text between special case-insesitive tag
(default: [pg-structure][/pg-structure]
) and converted to JavaScript object using JSON5.
Token name can be specified by using commentDataToken
arguments.
For details of JSON5, see it's web site: https://json5.org.
# 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: JSONData | undefined
# commentWithoutData
• get commentWithoutData(): string | undefined
Defined in pg-structure/base/db-object.ts:85
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: string | undefined
# db
• get db(): Db
Defined in pg-structure/base/db-object.ts:68
Database of the database object.
Returns: Db
# fullCatalogName
• get fullCatalogName(): string
Defined in pg-structure/base/db-object.ts:35
Full name of the database object including database name.
Returns: string
# fullName
• get fullName(): string
Defined in pg-structure/base/db-object.ts:30
Full name of the database object including parent name.
Returns: string
# nameCaseType
• get nameCaseType(): CaseType
Defined in pg-structure/base/db-object.ts:54
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
# separator
• get separator(): string
Defined in pg-structure/base/db-object.ts:61
Separator used in database object name. Empty string for came case and underscore for (_) snake case.
Returns: string