@deterministic-code/datasources-sqlserver 0.1.11 → 0.1.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AlterTableStatement, CreateBulkCreateStoredProcedureStatement, CreateBulkDeleteStoredProcedureStatement, CreateBulkUpdateStoredProcedureStatement, CreateCreateStoredProcedureStatement, CreateDeleteStoredProcedureStatement, CreateReadStoredProcedureStatement, CreateTableStatement, CreateTriggerStatement, CreateUpdateStoredProcedureStatement, DropIndexStatement, DropRoutineStatement, IdentityInsertStatement, StatementRenderer, type StatementTextRenderer } from "@deterministic-code/datasources";
|
|
1
|
+
import { AlterTableStatement, CreateBulkCreateStoredProcedureStatement, CreateBulkDeleteStoredProcedureStatement, CreateBulkUpdateStoredProcedureStatement, CreateCreateStoredProcedureStatement, CreateDeleteStoredProcedureStatement, CreateNestedReadStoredProcedureStatement, CreateReadStoredProcedureStatement, CreateTableStatement, CreateTriggerStatement, CreateUpdateStoredProcedureStatement, DropIndexStatement, DropRoutineStatement, IdentityInsertStatement, StatementRenderer, type StatementTextRenderer } from "@deterministic-code/datasources";
|
|
2
2
|
export declare class SqlServerStatementRenderer extends StatementRenderer {
|
|
3
3
|
constructor(text: StatementTextRenderer);
|
|
4
4
|
protected visitCreateTable(create: CreateTableStatement): string;
|
|
@@ -9,6 +9,7 @@ export declare class SqlServerStatementRenderer extends StatementRenderer {
|
|
|
9
9
|
protected visitDropRoutine(routine: DropRoutineStatement): string;
|
|
10
10
|
protected visitCreateCreateStoredProcedureStatement(statement: CreateCreateStoredProcedureStatement): string;
|
|
11
11
|
protected visitCreateReadStoredProcedureStatement(statement: CreateReadStoredProcedureStatement): string;
|
|
12
|
+
protected visitCreateNestedReadStoredProcedureStatement(statement: CreateNestedReadStoredProcedureStatement): string;
|
|
12
13
|
protected visitCreateUpdateStoredProcedureStatement(statement: CreateUpdateStoredProcedureStatement): string;
|
|
13
14
|
protected visitCreateDeleteStoredProcedureStatement(statement: CreateDeleteStoredProcedureStatement): string;
|
|
14
15
|
protected visitCreateBulkCreateStoredProcedureStatement(statement: CreateBulkCreateStoredProcedureStatement): string;
|
|
@@ -34,6 +34,9 @@ export class SqlServerStatementRenderer extends StatementRenderer {
|
|
|
34
34
|
visitCreateReadStoredProcedureStatement(statement) {
|
|
35
35
|
return new SqlServerStoredProcedureStatementRenderer().renderRead(statement);
|
|
36
36
|
}
|
|
37
|
+
visitCreateNestedReadStoredProcedureStatement(statement) {
|
|
38
|
+
return new SqlServerStoredProcedureStatementRenderer().renderNestedRead(statement);
|
|
39
|
+
}
|
|
37
40
|
visitCreateUpdateStoredProcedureStatement(statement) {
|
|
38
41
|
return new SqlServerStoredProcedureStatementRenderer().renderUpdate(statement);
|
|
39
42
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import type { CreateBulkCreateStoredProcedureStatement, CreateBulkDeleteStoredProcedureStatement, CreateBulkUpdateStoredProcedureStatement, CreateCreateStoredProcedureStatement, CreateDeleteStoredProcedureStatement, CreateReadStoredProcedureStatement, CreateUpdateStoredProcedureStatement } from "@deterministic-code/datasources";
|
|
1
|
+
import type { CreateBulkCreateStoredProcedureStatement, CreateBulkDeleteStoredProcedureStatement, CreateBulkUpdateStoredProcedureStatement, CreateCreateStoredProcedureStatement, CreateDeleteStoredProcedureStatement, CreateNestedReadStoredProcedureStatement, CreateReadStoredProcedureStatement, CreateUpdateStoredProcedureStatement } from "@deterministic-code/datasources";
|
|
2
2
|
export declare class SqlServerStoredProcedureStatementRenderer {
|
|
3
3
|
renderCreate(statement: CreateCreateStoredProcedureStatement): string;
|
|
4
|
+
renderNestedRead(statement: CreateNestedReadStoredProcedureStatement): string;
|
|
4
5
|
renderRead(statement: CreateReadStoredProcedureStatement): string;
|
|
5
6
|
renderUpdate(statement: CreateUpdateStoredProcedureStatement): string;
|
|
6
7
|
renderDelete(statement: CreateDeleteStoredProcedureStatement): string;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { DefaultStatementTextRenderer } from "@deterministic-code/datasources";
|
|
1
2
|
const params = (list) => list.map((p) => ` @${p.name} ${p.type}`).join(",\n");
|
|
2
3
|
const openjson = (columns) => columns.map((c) => `${c.name} ${c.type} '$.${c.name}'`).join(", ");
|
|
3
4
|
export class SqlServerStoredProcedureStatementRenderer {
|
|
@@ -10,6 +11,19 @@ BEGIN
|
|
|
10
11
|
VALUES (${statement.parameters.map((p) => `@${p.name}`).join(", ")});
|
|
11
12
|
SELECT CAST(SCOPE_IDENTITY() AS BIGINT) AS ${statement.key};
|
|
12
13
|
END;
|
|
14
|
+
GO`;
|
|
15
|
+
}
|
|
16
|
+
renderNestedRead(statement) {
|
|
17
|
+
const select = DefaultStatementTextRenderer.instance.render(statement.select);
|
|
18
|
+
const signature = statement.arguments
|
|
19
|
+
.map((argument) => ` @${argument.parameter.name} ${argument.parameter.type}`)
|
|
20
|
+
.join(",\n");
|
|
21
|
+
return `CREATE OR ALTER PROCEDURE ${statement.name}
|
|
22
|
+
${signature}
|
|
23
|
+
AS
|
|
24
|
+
BEGIN
|
|
25
|
+
${select};
|
|
26
|
+
END;
|
|
13
27
|
GO`;
|
|
14
28
|
}
|
|
15
29
|
renderRead(statement) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deterministic-code/datasources-sqlserver",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.14",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.js",
|
|
@@ -18,6 +18,6 @@
|
|
|
18
18
|
"access": "public"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@deterministic-code/datasources": "^0.1.
|
|
21
|
+
"@deterministic-code/datasources": "^0.1.14"
|
|
22
22
|
}
|
|
23
23
|
}
|