SQLGenerator
age-schema-client / SQLGenerator
Class: SQLGenerator
Defined in: src/sql/generator.ts:54
SQL Generator class for generating SQL statements based on schema definitions
Constructors
Constructor
new SQLGenerator(schema): SQLGenerator;
Defined in: src/sql/generator.ts:60
Create a new SQLGenerator instance
Parameters
| Parameter | Type | Description |
|---|---|---|
schema | SchemaDefinition | Schema definition |
Returns
SQLGenerator
Methods
generateCreateVertexTableSQL()
generateCreateVertexTableSQL(label, options): SQLResult;
Defined in: src/sql/generator.ts:74
Generate CREATE TABLE statement for a vertex label
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Vertex label |
options | SQLVertexTableOptions | DEFAULT_VERTEX_TABLE_OPTIONS | Table options |
Returns
SQL result
generateCreateVertexSQL()
generateCreateVertexSQL(label, data): SQLResult;
Defined in: src/sql/generator.ts:120
Generate SQL to create a vertex
Parameters
| Parameter | Type | Description |
|---|---|---|
label | string | Vertex label |
data | Record<string, unknown> | Vertex data |
Returns
SQL query and parameters
generateInsertVertexSQL()
generateInsertVertexSQL(
label,
data,
options): SQLResult;
Defined in: src/sql/generator.ts:135
Generate INSERT statement for a vertex
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Vertex label |
data | Record<string, any> | undefined | Vertex data |
options | SQLVertexTableOptions | DEFAULT_VERTEX_TABLE_OPTIONS | Table options |
Returns
SQL result with parameterized query and parameters
generateBatchInsertVertexSQL()
generateBatchInsertVertexSQL(
label,
dataArray,
options): SQLResult;
Defined in: src/sql/generator.ts:181
Generate batch INSERT statement for multiple vertices
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Vertex label |
dataArray | Record<string, any>[] | undefined | Array of vertex data |
options | SQLVertexTableOptions | DEFAULT_VERTEX_TABLE_OPTIONS | Table options |
Returns
SQL result with parameterized query and parameters
generateUpdateVertexSQL()
generateUpdateVertexSQL(
label,
id,
data,
options): SQLResult;
Defined in: src/sql/generator.ts:258
Generate UPDATE statement for a vertex
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Vertex label |
id | string | undefined | Vertex ID |
data | Record<string, any> | undefined | Vertex data to update |
options | SQLVertexTableOptions | DEFAULT_VERTEX_TABLE_OPTIONS | Table options |
Returns
SQL result with parameterized query and parameters
generateDeleteVertexSQL()
generateDeleteVertexSQL(
label,
id,
options): SQLResult;
Defined in: src/sql/generator.ts:312
Generate DELETE statement for a vertex
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Vertex label |
id | string | undefined | Vertex ID |
options | SQLVertexTableOptions | DEFAULT_VERTEX_TABLE_OPTIONS | Table options |
Returns
SQL result with parameterized query and parameters
generateSelectVertexSQL()
generateSelectVertexSQL(
label,
queryOptions,
options): SQLResult;
Defined in: src/sql/generator.ts:345
Generate SELECT statement for vertices
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Vertex label |
queryOptions | SQLQueryOptions | {} | Query options |
options | SQLVertexTableOptions | DEFAULT_VERTEX_TABLE_OPTIONS | Table options |
Returns
SQL result with parameterized query and parameters
generateVertexFilterFunctionSQL()
generateVertexFilterFunctionSQL(label, options): SQLResult;
Defined in: src/sql/generator.ts:460
Generate a filter function for vertices
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Vertex label |
options | SQLVertexTableOptions | DEFAULT_VERTEX_TABLE_OPTIONS | Table options |
Returns
SQL result with function definition
generateTransactionSQL()
generateTransactionSQL(type, name?): SQLResult;
Defined in: src/sql/generator.ts:543
Generate a transaction control statement
Parameters
| Parameter | Type | Description |
|---|---|---|
type | SQLTransactionType | Transaction type |
name? | string | Optional savepoint name |
Returns
SQL result
generateBatchSQL()
generateBatchSQL(operations): SQLResult;
Defined in: src/sql/generator.ts:587
Generate a batch SQL statement with multiple operations in a transaction
Parameters
| Parameter | Type | Description |
|---|---|---|
operations | SQLResult[] | Array of SQL results to combine |
Returns
SQL result with combined statements
generateCreateEdgeTableSQL()
generateCreateEdgeTableSQL(label, options): SQLResult;
Defined in: src/sql/generator.ts:627
Generate CREATE TABLE statement for an edge label
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Edge label |
options | SQLEdgeTableOptions | DEFAULT_EDGE_TABLE_OPTIONS | Table options |
Returns
SQL result
generateInsertEdgeSQL()
generateInsertEdgeSQL(
label,
sourceId,
targetId,
data,
options): SQLResult;
Defined in: src/sql/generator.ts:697
Generate INSERT statement for an edge
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Edge label |
sourceId | string | undefined | Source vertex ID |
targetId | string | undefined | Target vertex ID |
data | Record<string, any> | {} | Edge data |
options | SQLEdgeTableOptions | DEFAULT_EDGE_TABLE_OPTIONS | Table options |
Returns
SQL result with parameterized query and parameters
generateBatchInsertEdgeSQL()
generateBatchInsertEdgeSQL(
label,
edges,
options): SQLResult;
Defined in: src/sql/generator.ts:753
Generate batch INSERT statement for multiple edges
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Edge label |
edges | object[] | undefined | Array of edge data with source and target IDs |
options | SQLEdgeTableOptions | DEFAULT_EDGE_TABLE_OPTIONS | Table options |
Returns
SQL result with parameterized query and parameters
generateUpdateEdgeSQL()
generateUpdateEdgeSQL(
label,
id,
data,
options): SQLResult;
Defined in: src/sql/generator.ts:848
Generate UPDATE statement for an edge
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Edge label |
id | string | undefined | Edge ID |
data | Record<string, any> | undefined | Edge data to update |
options | SQLEdgeTableOptions | DEFAULT_EDGE_TABLE_OPTIONS | Table options |
Returns
SQL result with parameterized query and parameters
generateDeleteEdgeSQL()
generateDeleteEdgeSQL(
label,
id,
options): SQLResult;
Defined in: src/sql/generator.ts:902
Generate DELETE statement for an edge
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Edge label |
id | string | undefined | Edge ID |
options | SQLEdgeTableOptions | DEFAULT_EDGE_TABLE_OPTIONS | Table options |
Returns
SQL result with parameterized query and parameters
generateDeleteEdgesBetweenVerticesSQL()
generateDeleteEdgesBetweenVerticesSQL(
label,
sourceId,
targetId,
options): SQLResult;
Defined in: src/sql/generator.ts:936
Generate DELETE statement for edges between vertices
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Edge label |
sourceId | string | undefined | Source vertex ID |
targetId | string | undefined | Target vertex ID |
options | SQLEdgeTableOptions | DEFAULT_EDGE_TABLE_OPTIONS | Table options |
Returns
SQL result with parameterized query and parameters
generateSelectEdgeSQL()
generateSelectEdgeSQL(
label,
queryOptions,
options): SQLResult;
Defined in: src/sql/generator.ts:971
Generate SELECT statement for edges
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Edge label |
queryOptions | SQLQueryOptions | {} | Query options |
options | SQLEdgeTableOptions | DEFAULT_EDGE_TABLE_OPTIONS | Table options |
Returns
SQL result with parameterized query and parameters
generateEdgeFilterFunctionSQL()
generateEdgeFilterFunctionSQL(label, options): SQLResult;
Defined in: src/sql/generator.ts:1127
Generate a filter function for edges
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
label | string | undefined | Edge label |
options | SQLEdgeTableOptions | DEFAULT_EDGE_TABLE_OPTIONS | Table options |
Returns
SQL result with function definition