@clickhouse/client-common
Advanced tools
Comparing version 1.3.0 to 1.4.0
@@ -43,6 +43,18 @@ import type { BaseClickHouseClientConfigOptions, ClickHouseSettings, ConnExecResult, IsSame, WithClickHouseSummary, WithResponseHeaders } from '@clickhouse/client-common'; | ||
export type QueryResult<Stream, Format extends DataFormat> = IsSame<Format, DataFormat> extends true ? BaseResultSet<Stream, unknown> : BaseResultSet<Stream, Format>; | ||
export interface ExecParams extends BaseQueryParams { | ||
/** Statement to execute. */ | ||
export type ExecParams = BaseQueryParams & { | ||
/** Statement to execute (including the FORMAT clause). By default, the query will be sent in the request body; | ||
* If {@link ExecParamsWithValues.values} are defined, the query is sent as a request parameter, | ||
* and the values are sent in the request body instead. */ | ||
query: string; | ||
} | ||
}; | ||
export type ExecParamsWithValues<Stream> = ExecParams & { | ||
/** If you have a custom INSERT statement to run with `exec`, | ||
* the data from this stream will be inserted. | ||
* | ||
* NB: the data in the stream is expected to be serialized accordingly to the FORMAT clause | ||
* used in {@link ExecParams.query} in this case. | ||
* | ||
* @see https://clickhouse.com/docs/en/interfaces/formats */ | ||
values: Stream; | ||
}; | ||
export type CommandParams = ExecParams; | ||
@@ -125,3 +137,3 @@ export type CommandResult = { | ||
*/ | ||
exec(params: ExecParams): Promise<ExecResult<Stream>>; | ||
exec(params: ExecParams | ExecParamsWithValues<Stream>): Promise<ExecResult<Stream>>; | ||
/** | ||
@@ -128,0 +140,0 @@ * The primary method for data insertion. It is recommended to avoid arrays in case of large inserts |
@@ -111,4 +111,6 @@ "use strict"; | ||
const query = removeTrailingSemi(params.query.trim()); | ||
const values = 'values' in params ? params.values : undefined; | ||
return await this.connection.exec({ | ||
query, | ||
values, | ||
...this.withClientQueryParams(params), | ||
@@ -115,0 +117,0 @@ }); |
@@ -39,2 +39,5 @@ import type { WithClickHouseSummary, WithResponseHeaders } from './clickhouse_types'; | ||
} | ||
export interface ConnExecParams<Stream> extends ConnBaseQueryParams { | ||
values?: Stream; | ||
} | ||
export interface ConnBaseResult extends WithResponseHeaders { | ||
@@ -62,4 +65,4 @@ query_id: string; | ||
insert(params: ConnInsertParams<Stream>): Promise<ConnInsertResult>; | ||
exec(params: ConnBaseQueryParams): Promise<ConnExecResult<Stream>>; | ||
exec(params: ConnExecParams<Stream>): Promise<ConnExecResult<Stream>>; | ||
command(params: ConnBaseQueryParams): Promise<ConnCommandResult>; | ||
} |
@@ -16,4 +16,4 @@ /** Should be re-exported by the implementation */ | ||
export { parseError } from './error'; | ||
export type { CompressionSettings, Connection, ConnectionParams, ConnInsertResult, ConnExecResult, ConnQueryResult, ConnBaseQueryParams, ConnBaseResult, ConnInsertParams, ConnPingResult, ConnCommandResult, ConnOperation, } from './connection'; | ||
export type { CompressionSettings, Connection, ConnectionParams, ConnInsertResult, ConnExecParams, ConnExecResult, ConnQueryResult, ConnBaseQueryParams, ConnBaseResult, ConnInsertParams, ConnPingResult, ConnCommandResult, ConnOperation, } from './connection'; | ||
export type { QueryParamsWithFormat } from './client'; | ||
export type { IsSame } from './ts_utils'; |
@@ -1,2 +0,2 @@ | ||
declare const _default: "1.3.0"; | ||
declare const _default: "1.4.0"; | ||
export default _default; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = '1.3.0'; | ||
exports.default = '1.4.0'; | ||
//# sourceMappingURL=version.js.map |
@@ -5,3 +5,3 @@ { | ||
"homepage": "https://clickhouse.com", | ||
"version": "1.3.0", | ||
"version": "1.4.0", | ||
"license": "Apache-2.0", | ||
@@ -8,0 +8,0 @@ "keywords": [ |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
272532
3669