@memberjunction/sqlserver-dataprovider 2.47.0 → 2.49.0
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.
- package/README.md +58 -0
- package/dist/SQLServerDataProvider.d.ts +281 -6
- package/dist/SQLServerDataProvider.d.ts.map +1 -1
- package/dist/SQLServerDataProvider.js +843 -95
- package/dist/SQLServerDataProvider.js.map +1 -1
- package/dist/SQLServerTransactionGroup.d.ts.map +1 -1
- package/dist/SQLServerTransactionGroup.js +99 -20
- package/dist/SQLServerTransactionGroup.js.map +1 -1
- package/dist/UserCache.d.ts +3 -3
- package/dist/UserCache.d.ts.map +1 -1
- package/dist/UserCache.js +33 -5
- package/dist/UserCache.js.map +1 -1
- package/dist/config.js +10 -10
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +12 -10
package/README.md
CHANGED
|
@@ -458,6 +458,64 @@ Helper function to initialize and configure the SQL Server data provider.
|
|
|
458
458
|
setupSQLServerClient(config: SQLServerProviderConfigData): Promise<SQLServerDataProvider>
|
|
459
459
|
```
|
|
460
460
|
|
|
461
|
+
## SQL Output Logging
|
|
462
|
+
|
|
463
|
+
The SQL Server Data Provider includes built-in SQL output logging capabilities that allow you to capture all SQL statements executed during operations. This is particularly useful for:
|
|
464
|
+
|
|
465
|
+
- **Creating migration files** from application operations
|
|
466
|
+
- **Debugging database operations** by reviewing exact SQL statements
|
|
467
|
+
- **Performance analysis** by examining query patterns
|
|
468
|
+
- **Compliance and auditing** requirements
|
|
469
|
+
|
|
470
|
+
### Key Features
|
|
471
|
+
|
|
472
|
+
- **Session-based logging** with unique identifiers for each logging session
|
|
473
|
+
- **Parallel execution support** - logging runs alongside SQL execution without impacting performance
|
|
474
|
+
- **Multiple output formats** - standard SQL logs or migration-ready files with Flyway naming
|
|
475
|
+
- **Disposable pattern** - automatic resource cleanup when logging session ends
|
|
476
|
+
- **Parameter capture** - logs both SQL statements and their parameters
|
|
477
|
+
|
|
478
|
+
### Basic Usage
|
|
479
|
+
|
|
480
|
+
```typescript
|
|
481
|
+
import { SQLServerDataProvider } from '@memberjunction/sqlserver-dataprovider';
|
|
482
|
+
|
|
483
|
+
const dataProvider = new SQLServerDataProvider(/* config */);
|
|
484
|
+
await dataProvider.initialize();
|
|
485
|
+
|
|
486
|
+
// Create a SQL logging session
|
|
487
|
+
const logger = await dataProvider.createSqlLogger('./output/operations.sql', {
|
|
488
|
+
formatAsMigration: false,
|
|
489
|
+
description: 'User registration operations'
|
|
490
|
+
});
|
|
491
|
+
|
|
492
|
+
// Perform your database operations - they will be automatically logged
|
|
493
|
+
await dataProvider.ExecuteSQL('INSERT INTO Users (Name, Email) VALUES (@name, @email)', {
|
|
494
|
+
name: 'John Doe',
|
|
495
|
+
email: 'john@example.com'
|
|
496
|
+
});
|
|
497
|
+
|
|
498
|
+
// Clean up the logging session
|
|
499
|
+
await logger.dispose();
|
|
500
|
+
```
|
|
501
|
+
|
|
502
|
+
### Migration-Ready Format
|
|
503
|
+
|
|
504
|
+
```typescript
|
|
505
|
+
// Create logger with migration formatting
|
|
506
|
+
const migrationLogger = await dataProvider.createSqlLogger('./migrations/V20241215120000__User_Operations.sql', {
|
|
507
|
+
formatAsMigration: true,
|
|
508
|
+
description: 'User management operations for deployment'
|
|
509
|
+
});
|
|
510
|
+
|
|
511
|
+
// Your operations are logged in Flyway-compatible format
|
|
512
|
+
// with proper headers and schema placeholders
|
|
513
|
+
```
|
|
514
|
+
|
|
515
|
+
For comprehensive examples and advanced usage patterns, see [EXAMPLE_SQL_LOGGING.md](./EXAMPLE_SQL_LOGGING.md).
|
|
516
|
+
|
|
517
|
+
> **Note**: This SQL output logging is different from the query execution logging available through subclassing the SQLServerDataProvider. SQL output logging captures statements for external use (like creating migrations), while execution logging is for debugging and monitoring the provider itself.
|
|
518
|
+
|
|
461
519
|
## Troubleshooting
|
|
462
520
|
|
|
463
521
|
### Common Issues
|
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview SQL Server Data Provider for MemberJunction
|
|
3
|
+
*
|
|
4
|
+
* This module provides a comprehensive SQL Server implementation of the MemberJunction data provider interfaces.
|
|
5
|
+
* It handles all database operations including CRUD operations, metadata management, view execution, and
|
|
6
|
+
* advanced features like SQL logging, transaction management, and record change tracking.
|
|
7
|
+
*
|
|
8
|
+
* @module @memberjunction/sqlserver-dataprovider
|
|
9
|
+
* @author MemberJunction Team
|
|
10
|
+
* @version 2.0
|
|
11
|
+
* @since 1.0
|
|
12
|
+
*/
|
|
1
13
|
/**************************************************************************************************************
|
|
2
14
|
* The SQLServerDataProvider provides a data provider for the entities framework that uses SQL Server directly
|
|
3
15
|
* In practice - this FILE will NOT exist in the entities library, we need to move to its own separate project
|
|
@@ -5,39 +17,222 @@
|
|
|
5
17
|
**************************************************************************************************************/
|
|
6
18
|
import { BaseEntity, IEntityDataProvider, IMetadataProvider, IRunViewProvider, ProviderConfigDataBase, RunViewResult, EntityInfo, EntityFieldInfo, ApplicationInfo, RunViewParams, ProviderBase, ProviderType, UserInfo, RoleInfo, RecordChange, UserRoleInfo, ILocalStorageProvider, RowLevelSecurityFilterInfo, AuditLogTypeInfo, AuthorizationInfo, TransactionGroupBase, EntitySaveOptions, RunReportParams, DatasetItemFilterType, DatasetResultType, DatasetStatusResultType, EntityRecordNameInput, EntityRecordNameResult, IRunReportProvider, RunReportResult, RecordDependency, RecordMergeRequest, RecordMergeResult, EntityDependency, IRunQueryProvider, RunQueryResult, PotentialDuplicateRequest, PotentialDuplicateResponse, CompositeKey, EntityDeleteOptions, DatasetItemResultType } from '@memberjunction/core';
|
|
7
19
|
import { AuditLogEntity, EntityAIActionEntity, RecordMergeLogEntity, UserViewEntityExtended } from '@memberjunction/core-entities';
|
|
20
|
+
import * as sql from 'mssql';
|
|
8
21
|
import { RunQueryParams } from '@memberjunction/core/dist/generic/runQuery';
|
|
9
22
|
import { ActionResult } from '@memberjunction/actions-base';
|
|
23
|
+
/**
|
|
24
|
+
* Configuration options for SQL execution with logging support
|
|
25
|
+
*/
|
|
26
|
+
export interface ExecuteSQLOptions {
|
|
27
|
+
/** Optional description for this SQL operation */
|
|
28
|
+
description?: string;
|
|
29
|
+
/** If true, this statement will not be logged to any logging session */
|
|
30
|
+
ignoreLogging?: boolean;
|
|
31
|
+
/** Whether this is a data mutation operation (INSERT/UPDATE/DELETE) */
|
|
32
|
+
isMutation?: boolean;
|
|
33
|
+
/** Simple SQL fallback for loggers with logRecordChangeMetadata=false (only for Save/Delete operations) */
|
|
34
|
+
simpleSQLFallback?: string;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Configuration options for batch SQL execution
|
|
38
|
+
*/
|
|
39
|
+
export interface ExecuteSQLBatchOptions {
|
|
40
|
+
/** Optional description for this batch operation */
|
|
41
|
+
description?: string;
|
|
42
|
+
/** If true, this batch will not be logged to any logging session */
|
|
43
|
+
ignoreLogging?: boolean;
|
|
44
|
+
/** Whether this batch contains data mutation operations */
|
|
45
|
+
isMutation?: boolean;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Configuration data specific to SQL Server provider
|
|
49
|
+
*/
|
|
10
50
|
export declare class SQLServerProviderConfigData extends ProviderConfigDataBase {
|
|
51
|
+
/**
|
|
52
|
+
* Gets the SQL Server data source configuration
|
|
53
|
+
*/
|
|
11
54
|
get DataSource(): any;
|
|
55
|
+
/**
|
|
56
|
+
* Gets the current user's email address
|
|
57
|
+
*/
|
|
12
58
|
get CurrentUserEmail(): string;
|
|
59
|
+
/**
|
|
60
|
+
* Gets the interval in seconds for checking metadata refresh
|
|
61
|
+
*/
|
|
13
62
|
get CheckRefreshIntervalSeconds(): number;
|
|
14
63
|
constructor(dataSource: any, currentUserEmail: string, MJCoreSchemaName?: string, checkRefreshIntervalSeconds?: number, includeSchemas?: string[], excludeSchemas?: string[]);
|
|
15
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Configuration options for SQL logging sessions
|
|
67
|
+
*/
|
|
68
|
+
export interface SqlLoggingOptions {
|
|
69
|
+
/** Whether to format output as a migration file with schema placeholders */
|
|
70
|
+
formatAsMigration?: boolean;
|
|
71
|
+
/** Optional description to include as a comment at the start of the log */
|
|
72
|
+
description?: string;
|
|
73
|
+
/** Which types of statements to log: 'queries' (all), 'mutations' (only data changes), 'both' (default) */
|
|
74
|
+
statementTypes?: 'queries' | 'mutations' | 'both';
|
|
75
|
+
/** Optional batch separator to emit after each statement (e.g., "GO" for SQL Server) */
|
|
76
|
+
batchSeparator?: string;
|
|
77
|
+
/** Whether to pretty print SQL statements with proper formatting */
|
|
78
|
+
prettyPrint?: boolean;
|
|
79
|
+
/** Whether to log record change metadata wrapper SQL (default: false). When false, only core spCreate/spUpdate/spDelete calls are logged */
|
|
80
|
+
logRecordChangeMetadata?: boolean;
|
|
81
|
+
/** Whether to retain log files that contain no SQL statements (default: false). When false, empty log files are automatically deleted on dispose */
|
|
82
|
+
retainEmptyLogFiles?: boolean;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Interface for SQL logging session with disposable pattern
|
|
86
|
+
*/
|
|
87
|
+
export interface SqlLoggingSession {
|
|
88
|
+
/** Unique session ID */
|
|
89
|
+
readonly id: string;
|
|
90
|
+
/** File path where SQL is being logged */
|
|
91
|
+
readonly filePath: string;
|
|
92
|
+
/** Session start time */
|
|
93
|
+
readonly startTime: Date;
|
|
94
|
+
/** Number of statements logged so far */
|
|
95
|
+
readonly statementCount: number;
|
|
96
|
+
/** Configuration options for this session */
|
|
97
|
+
readonly options: SqlLoggingOptions;
|
|
98
|
+
/** Dispose method to stop logging and clean up resources */
|
|
99
|
+
dispose(): Promise<void>;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* SQL Server implementation of the MemberJunction data provider interfaces.
|
|
103
|
+
*
|
|
104
|
+
* This class provides comprehensive database functionality including:
|
|
105
|
+
* - CRUD operations for entities
|
|
106
|
+
* - Metadata management and caching
|
|
107
|
+
* - View and query execution
|
|
108
|
+
* - Transaction support
|
|
109
|
+
* - SQL logging capabilities
|
|
110
|
+
* - Record change tracking
|
|
111
|
+
* - AI integration hooks
|
|
112
|
+
*
|
|
113
|
+
* @example
|
|
114
|
+
* ```typescript
|
|
115
|
+
* const config = new SQLServerProviderConfigData(dataSource, userEmail);
|
|
116
|
+
* const provider = new SQLServerDataProvider(config);
|
|
117
|
+
* await provider.Config();
|
|
118
|
+
* ```
|
|
119
|
+
*/
|
|
16
120
|
export declare class SQLServerDataProvider extends ProviderBase implements IEntityDataProvider, IMetadataProvider, IRunViewProvider, IRunReportProvider, IRunQueryProvider {
|
|
17
|
-
private
|
|
18
|
-
private
|
|
121
|
+
private _pool;
|
|
122
|
+
private _poolConfig;
|
|
123
|
+
private _transaction;
|
|
124
|
+
private _transactionRequest;
|
|
19
125
|
private _currentUserEmail;
|
|
20
126
|
private _localStorageProvider;
|
|
21
127
|
private _bAllowRefresh;
|
|
22
128
|
private _recordDupeDetector;
|
|
23
129
|
private _needsDatetimeOffsetAdjustment;
|
|
24
130
|
private _datetimeOffsetTestComplete;
|
|
131
|
+
private _sqlLoggingSessions;
|
|
132
|
+
/**
|
|
133
|
+
* Gets the current configuration data for this provider instance
|
|
134
|
+
*/
|
|
25
135
|
get ConfigData(): SQLServerProviderConfigData;
|
|
136
|
+
/**
|
|
137
|
+
* Configures the SQL Server data provider with connection settings and initializes the connection pool
|
|
138
|
+
*
|
|
139
|
+
* @param configData - Configuration data including connection string and options
|
|
140
|
+
* @returns Promise<boolean> - True if configuration succeeded
|
|
141
|
+
*/
|
|
26
142
|
Config(configData: SQLServerProviderConfigData): Promise<boolean>;
|
|
27
143
|
/**
|
|
28
|
-
*
|
|
144
|
+
* Gets the underlying SQL Server connection pool
|
|
145
|
+
* @returns The mssql ConnectionPool object
|
|
29
146
|
*/
|
|
30
147
|
get DatabaseConnection(): any;
|
|
31
148
|
/**
|
|
32
149
|
* For the SQLServerDataProvider the unique instance connection string which is used to identify, uniquely, a given connection is the following format:
|
|
33
|
-
*
|
|
150
|
+
* mssql://host:port/instanceName?/database
|
|
34
151
|
* instanceName is only inserted if it is provided in the options
|
|
35
152
|
*/
|
|
36
153
|
get InstanceConnectionString(): string;
|
|
154
|
+
/**
|
|
155
|
+
* Gets whether metadata refresh is currently allowed
|
|
156
|
+
* @internal
|
|
157
|
+
*/
|
|
37
158
|
protected get AllowRefresh(): boolean;
|
|
159
|
+
/**
|
|
160
|
+
* Gets the MemberJunction core schema name (defaults to __mj if not configured)
|
|
161
|
+
*/
|
|
38
162
|
get MJCoreSchemaName(): string;
|
|
39
163
|
/**************************************************************************/
|
|
40
164
|
/**************************************************************************/
|
|
165
|
+
/**
|
|
166
|
+
* Creates a new SQL logging session that will capture all SQL operations to a file.
|
|
167
|
+
* Returns a disposable session object that must be disposed to stop logging.
|
|
168
|
+
*
|
|
169
|
+
* @param filePath - Full path to the file where SQL statements will be logged
|
|
170
|
+
* @param options - Optional configuration for the logging session
|
|
171
|
+
* @returns Promise<SqlLoggingSession> - Disposable session object
|
|
172
|
+
*
|
|
173
|
+
* @example
|
|
174
|
+
* ```typescript
|
|
175
|
+
* // Basic usage
|
|
176
|
+
* const session = await provider.createSqlLogger('./logs/metadata-sync.sql');
|
|
177
|
+
* try {
|
|
178
|
+
* // Perform operations that will be logged
|
|
179
|
+
* await provider.ExecuteSQL('INSERT INTO ...');
|
|
180
|
+
* } finally {
|
|
181
|
+
* await session.dispose(); // Stop logging
|
|
182
|
+
* }
|
|
183
|
+
*
|
|
184
|
+
* // With migration formatting
|
|
185
|
+
* const session = await provider.createSqlLogger('./migrations/changes.sql', {
|
|
186
|
+
* formatAsMigration: true,
|
|
187
|
+
* description: 'MetadataSync push operation'
|
|
188
|
+
* });
|
|
189
|
+
* ```
|
|
190
|
+
*/
|
|
191
|
+
createSqlLogger(filePath: string, options?: SqlLoggingOptions): Promise<SqlLoggingSession>;
|
|
192
|
+
/**
|
|
193
|
+
* Gets information about all active SQL logging sessions.
|
|
194
|
+
* Useful for monitoring and debugging.
|
|
195
|
+
*
|
|
196
|
+
* @returns Array of session information objects
|
|
197
|
+
*/
|
|
198
|
+
getActiveSqlLoggingSessions(): Array<{
|
|
199
|
+
id: string;
|
|
200
|
+
filePath: string;
|
|
201
|
+
startTime: Date;
|
|
202
|
+
statementCount: number;
|
|
203
|
+
options: SqlLoggingOptions;
|
|
204
|
+
}>;
|
|
205
|
+
/**
|
|
206
|
+
* Disposes all active SQL logging sessions.
|
|
207
|
+
* Useful for cleanup on provider shutdown.
|
|
208
|
+
*/
|
|
209
|
+
disposeAllSqlLoggingSessions(): Promise<void>;
|
|
210
|
+
/**
|
|
211
|
+
* Internal method to log SQL statement to all active logging sessions.
|
|
212
|
+
* This is called automatically by ExecuteSQL methods.
|
|
213
|
+
*
|
|
214
|
+
* @param query - The SQL query being executed
|
|
215
|
+
* @param parameters - Parameters for the query
|
|
216
|
+
* @param description - Optional description for this operation
|
|
217
|
+
* @param ignoreLogging - If true, this statement will not be logged
|
|
218
|
+
* @param isMutation - Whether this is a data mutation operation
|
|
219
|
+
* @param simpleSQLFallback - Optional simple SQL to use for loggers with logRecordChangeMetadata=false
|
|
220
|
+
*/
|
|
221
|
+
private _logSqlStatement;
|
|
222
|
+
/**
|
|
223
|
+
* Static method to log SQL statements from external sources like transaction groups
|
|
224
|
+
*
|
|
225
|
+
* @param query - The SQL query being executed
|
|
226
|
+
* @param parameters - Parameters for the query
|
|
227
|
+
* @param description - Optional description for this operation
|
|
228
|
+
* @param isMutation - Whether this is a data mutation operation
|
|
229
|
+
* @param simpleSQLFallback - Optional simple SQL to use for loggers with logRecordChangeMetadata=false
|
|
230
|
+
*/
|
|
231
|
+
static LogSQLStatement(query: string, parameters?: any, description?: string, isMutation?: boolean, simpleSQLFallback?: string): Promise<void>;
|
|
232
|
+
/**************************************************************************/
|
|
233
|
+
/**************************************************************************/
|
|
234
|
+
/**************************************************************************/
|
|
235
|
+
/**************************************************************************/
|
|
41
236
|
RunReport(params: RunReportParams, contextUser?: UserInfo): Promise<RunReportResult>;
|
|
42
237
|
/**************************************************************************/
|
|
43
238
|
/**************************************************************************/
|
|
@@ -106,7 +301,30 @@ export declare class SQLServerDataProvider extends ProviderBase implements IEnti
|
|
|
106
301
|
* it is also used by the SQLServerTransactionGroup to regenerate Save SQL if any values were changed by the transaction group due to transaction variables being set into the object.
|
|
107
302
|
*/
|
|
108
303
|
GetSaveSQL(entity: BaseEntity, bNewRecord: boolean, spName: string, user: UserInfo): string;
|
|
304
|
+
/**
|
|
305
|
+
* This function generates both the full SQL (with record change metadata) and the simple stored procedure call
|
|
306
|
+
* @returns Object with fullSQL and simpleSQL properties
|
|
307
|
+
*/
|
|
308
|
+
private GetSaveSQLWithDetails;
|
|
309
|
+
/**
|
|
310
|
+
* Gets AI actions configured for an entity based on trigger timing
|
|
311
|
+
*
|
|
312
|
+
* @param entityInfo - The entity to get AI actions for
|
|
313
|
+
* @param before - True to get before-save actions, false for after-save
|
|
314
|
+
* @returns Array of AI action entities
|
|
315
|
+
* @internal
|
|
316
|
+
*/
|
|
109
317
|
protected GetEntityAIActions(entityInfo: EntityInfo, before: boolean): EntityAIActionEntity[];
|
|
318
|
+
/**
|
|
319
|
+
* Handles entity actions (non-AI) for save, delete, or validate operations
|
|
320
|
+
*
|
|
321
|
+
* @param entity - The entity being operated on
|
|
322
|
+
* @param baseType - The type of operation
|
|
323
|
+
* @param before - Whether this is before or after the operation
|
|
324
|
+
* @param user - The user performing the operation
|
|
325
|
+
* @returns Array of action results
|
|
326
|
+
* @internal
|
|
327
|
+
*/
|
|
110
328
|
protected HandleEntityActions(entity: BaseEntity, baseType: 'save' | 'delete' | 'validate', before: boolean, user: UserInfo): Promise<ActionResult[]>;
|
|
111
329
|
/**
|
|
112
330
|
* Handles Entity AI Actions. Parameters are setup for a future support of delete actions, but currently that isn't supported so the baseType parameter
|
|
@@ -156,13 +374,34 @@ export declare class SQLServerDataProvider extends ProviderBase implements IEnti
|
|
|
156
374
|
*/
|
|
157
375
|
DiffObjects(oldData: any, newData: any, entityInfo: EntityInfo, quoteToEscape: string): any;
|
|
158
376
|
Load(entity: BaseEntity, CompositeKey: CompositeKey, EntityRelationshipsToLoad: string[], user: UserInfo): Promise<{}>;
|
|
377
|
+
/**
|
|
378
|
+
* Generates the SQL statement for deleting an entity record
|
|
379
|
+
*
|
|
380
|
+
* @param entity - The entity to delete
|
|
381
|
+
* @param user - The user performing the delete
|
|
382
|
+
* @returns The full SQL statement for deletion
|
|
383
|
+
* @internal
|
|
384
|
+
*/
|
|
159
385
|
protected GetDeleteSQL(entity: BaseEntity, user: UserInfo): string;
|
|
386
|
+
/**
|
|
387
|
+
* This function generates both the full SQL (with record change metadata) and the simple stored procedure call for delete
|
|
388
|
+
* @returns Object with fullSQL and simpleSQL properties
|
|
389
|
+
*/
|
|
390
|
+
private GetDeleteSQLWithDetails;
|
|
160
391
|
Delete(entity: BaseEntity, options: EntityDeleteOptions, user: UserInfo): Promise<boolean>;
|
|
161
392
|
/**************************************************************************/
|
|
162
393
|
/**************************************************************************/
|
|
163
394
|
/**************************************************************************/
|
|
164
395
|
/**************************************************************************/
|
|
165
396
|
GetDatasetByName(datasetName: string, itemFilters?: DatasetItemFilterType[]): Promise<DatasetResultType>;
|
|
397
|
+
/**
|
|
398
|
+
* Constructs the SQL query for a dataset item.
|
|
399
|
+
* @param item - The dataset item metadata
|
|
400
|
+
* @param itemFilters - Optional filters to apply
|
|
401
|
+
* @param datasetName - Name of the dataset (for error logging)
|
|
402
|
+
* @returns The SQL query string, or null if columns are invalid
|
|
403
|
+
*/
|
|
404
|
+
protected GetDatasetItemSQL(item: any, itemFilters: any, datasetName: string): string | null;
|
|
166
405
|
protected GetDatasetItem(item: any, itemFilters: any, datasetName: any): Promise<DatasetItemResultType>;
|
|
167
406
|
/**
|
|
168
407
|
* Gets column info for a dataset item, which might be * for all columns or if a Columns field was provided in the DatasetItem table,
|
|
@@ -199,10 +438,46 @@ export declare class SQLServerDataProvider extends ProviderBase implements IEnti
|
|
|
199
438
|
* @param parameters
|
|
200
439
|
* @returns
|
|
201
440
|
*/
|
|
202
|
-
ExecuteSQL(query: string, parameters?: any): Promise<any>;
|
|
441
|
+
ExecuteSQL(query: string, parameters?: any, options?: ExecuteSQLOptions): Promise<any>;
|
|
442
|
+
/**
|
|
443
|
+
* Static helper method for executing SQL queries on an external connection pool.
|
|
444
|
+
* This method is designed to be used by generated code where a connection pool
|
|
445
|
+
* is passed in from the context. It returns results as arrays for consistency
|
|
446
|
+
* with the expected behavior in generated resolvers.
|
|
447
|
+
*
|
|
448
|
+
* @param pool - The mssql ConnectionPool to execute the query on
|
|
449
|
+
* @param query - The SQL query to execute
|
|
450
|
+
* @param parameters - Optional parameters for the query
|
|
451
|
+
* @returns Promise<any[]> - Array of results (empty array if no results)
|
|
452
|
+
*/
|
|
453
|
+
static ExecuteSQLWithPool(pool: sql.ConnectionPool, query: string, parameters?: any): Promise<any[]>;
|
|
454
|
+
/**
|
|
455
|
+
* Static method to execute a batch of SQL queries using a provided connection source.
|
|
456
|
+
* This allows the batch logic to be reused from external contexts like TransactionGroup.
|
|
457
|
+
* All queries are combined into a single SQL statement and executed together within
|
|
458
|
+
* the same connection/transaction context for optimal performance.
|
|
459
|
+
*
|
|
460
|
+
* @param connectionSource - Either a sql.ConnectionPool, sql.Transaction, or sql.Request to use for execution
|
|
461
|
+
* @param queries - Array of SQL queries to execute
|
|
462
|
+
* @param parameters - Optional array of parameter arrays, one for each query
|
|
463
|
+
* @returns Promise<any[][]> - Array of result arrays, one for each query
|
|
464
|
+
*/
|
|
465
|
+
static ExecuteSQLBatchStatic(connectionSource: sql.ConnectionPool | sql.Transaction | sql.Request, queries: string[], parameters?: any[][]): Promise<any[][]>;
|
|
466
|
+
/**
|
|
467
|
+
* Executes multiple SQL queries in a single batch for optimal performance.
|
|
468
|
+
* All queries are combined into a single SQL statement and executed together.
|
|
469
|
+
* This is particularly useful for bulk operations where you need to execute
|
|
470
|
+
* many similar queries and want to minimize round trips to the database.
|
|
471
|
+
*
|
|
472
|
+
* @param queries - Array of SQL queries to execute
|
|
473
|
+
* @param parameters - Optional array of parameter arrays, one for each query
|
|
474
|
+
* @param options - Optional execution options for logging and description
|
|
475
|
+
* @returns Promise<any[][]> - Array of result arrays, one for each query
|
|
476
|
+
*/
|
|
477
|
+
ExecuteSQLBatch(queries: string[], parameters?: any[][], options?: ExecuteSQLBatchOptions): Promise<any[][]>;
|
|
203
478
|
/**
|
|
204
479
|
* Determines whether the database driver requires adjustment for datetimeoffset fields.
|
|
205
|
-
* This method performs an empirical test on first use to detect if the driver (e.g.,
|
|
480
|
+
* This method performs an empirical test on first use to detect if the driver (e.g., mssql)
|
|
206
481
|
* incorrectly handles timezone information in datetimeoffset columns.
|
|
207
482
|
*
|
|
208
483
|
* @returns {Promise<boolean>} True if datetimeoffset values need timezone adjustment, false otherwise
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SQLServerDataProvider.d.ts","sourceRoot":"","sources":["../src/SQLServerDataProvider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SQLServerDataProvider.d.ts","sourceRoot":"","sources":["../src/SQLServerDataProvider.ts"],"names":[],"mappings":"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"}
|