A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://tediousjs.github.io/tedious/api-request.html below:

API - Request | Tedious

Request

A Request instance represents a request that can be executed on a connection.

new Request(sql, callback)
var Request = require('tedious').Request;

request = new Request("select 42, 'hello world'", function(err, rowCount) {
  ...
});
connection.execSql(request);

callback

function (err, rowCount, rows) { }

The callback is called when the request has completed, either successfully or with an error. If an error occurs during execution of the statement(s), then err will describe the error.

As only one request at a time may be executed on a connection, another request should not be initiated until this callback is called.

This callback is called before requestCompleted event is emitted.

err

If an error occurs, an aggregate error object will be returned, and it needs to be logged as an array of messages. Be careful to check the size of the error message array before logging it as an array

err.errors.map (error=>console.log('Error: ', err))

rowCount

The number of rows emitted as result of executing the SQL statement.

rows

Rows as a result of executing the SQL statement.

Will only be avaiable if Connection's config.options.rowCollectionOnRequestCompletion is true.

request.on('columnMetadata', function (columns) { });

This event, describing result set columns, will be emitted before row events are emitted. This event may be emited multiple times when more than one recordset is produced by the statement.

columns

An array or object (depends on config.options.useColumnNames), where the columns can be accessed by index/name.

Each column has these properties.

colName
The column's name.
type.name
The column's type, such as VarChar, Int or Binary.
precision
The precision. Only applicable to numeric and decimal.
scale
The scale. Only applicable to numeric, decimal, time, datetime2 and datetimeoffset.
dataLength
The length, for char, varchar, nvarchar and varbinary.
Event: prepared
request.on('prepared', function () { });

The request has been prepared and can be used in subsequent calls to execute and unprepare.

Event: error
request.on('error', function (err) { });

The request encountered an error and has not been prepared.

Event: requestCompleted
request.on('requestCompleted', function () { });

This is the final event emitted by a request. This is emitted after the callback passed in a request is called.

Event: row
request.on('row', function (columns) { });

A row resulting from execution of the SQL statement.

columns

An array or object (depends on config.options.useColumnNames), where the columns can be accessed by index/name. Each column has two properties, metadata and value.

metadata
The same data that is exposed in the columnMetadata event.
value

The column's value. It will be null for a NULL.

If there are multiple columns with the same name, then this will be an array of the values.

Event: done
request.on('done', function (rowCount, more, rows) { });

All rows from a result set have been provided (through row events). This token is used to indicate the completion of a SQL statement. As multiple SQL statements can be sent to the server in a single SQL batch, multiple done events can be generated. An done event is emited for each SQL statement in the SQL batch except variable declarations. For execution of SQL statements within stored procedures, doneProc and doneInProc events are used in place of done events.

If you are using execSql then SQL server may treat the multiple calls with the same query as a stored procedure. When this occurs, the doneProc or doneInProc events may be emitted instead. You must handle both events to ensure complete coverage.

rowCount

The number of result rows. May be undefined if not available.

more

If there are more results to come (probably because multiple statements are being executed), then true.

rows

Rows as a result of executing the SQL statement.

Will only be avaiable if Connection's config.options.rowCollectionOnDone is true.

Event: doneInProc
request.on('doneInProc', function (rowCount, more, rows) { });

Indicates the completion status of a SQL statement within a stored procedure. All rows from a statement in a stored procedure have been provided (through row events).

This event may also occur when executing multiple calls with the same query using execSql.

rowCount

The number of result rows. May be undefined if not available.

more

If there are more result sets to come, then true.

rows

Rows as a result of executing the SQL.

Will only be avaiable if Connection's config.options.rowCollectionOnDone is true.

Event: doneProc
request.on('doneProc', function (rowCount, more, returnStatus, rows) { });

Indicates the completion status of a stored procedure. This is also generated for stored procedures executed through SQL statements.

This event may also occur when executing multiple calls with the same query using execSql.

rowCount

The number of result rows. May be undefined if not available.

more

If there are more result sets to come, then true.

returnStatus

The value returned from a stored procedure.

rows

Rows as a result of executing the SQL.

Will only be avaiable if Connection's config.options.rowCollectionOnDone is true.

Event: returnValue
request.on('returnValue', function (parameterName, value, metadata) { });

A value for an output parameter (that was added to the request with addOutputParameter(...)).

See also Using Parameters.

parameterName

The parameter name. (Does not start with '@'.)

value

The parameter's output value.

metadata

The same data that is exposed in the columnMetadata event.

Event: order
request.on('order', function (orderColumns) { });

This event gives the columns by which data is ordered, if ORDER BY clause is executed in SQL Server.

orderColumns

An array of column numbers in the result set by which data is ordered.

request.addParameter(name, type, value, [options])

Add an input parameter to the request.

request.addParameter('city', TYPES.VarChar, 'London');

See also Using Parameters.

name

The parameter name. This should correspond to a parameter in the SQL, or a parameter that a called procedure expects.

The name should not start '@'.

type

One of the supported data types.

value

The value that the parameter is to be given. The Javascript type of the argument should match that documented for data types.

options

Additional type options. Optional.

request.addOutputParameter(name, type, [value], [options])

Add an output parameter to the request.

request.addOutputParameter('id', TYPES.Int);

The parameter's value will be provide by an emitted returnValue event.

See also Using Parameters.

name

The parameter name. This should correspond to a parameter in the SQL, or a parameter that a called procedure expects.

type

One of the supported data types.

value

The value that the parameter is to be given. The Javascript type of the argument should match that documented for data types. Optional.

options

Additional type options. Optional.

request.pause()

Temporarily suspends the flow of data from the database. No more 'row' events will be emitted until request.resume() is called.

request.pause();

If this request is already in a paused state, calling pause() has no effect.

request.resume()

Resumes the flow of data from the database.

request.resume();

If this request is not in a paused state, calling resume() has no effect.

request.setTimeout(timeout)

Sets a timeout for this request.

request.setTimeout(timeout);

timeout

The number of milliseconds before the request is considered failed, or 0 for no timeout.

When no timeout is set for the request, the options.requestTimeout of the Connection is used.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4