You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/language-extensions/reference/extensibility-framework-api.md
+14-12Lines changed: 14 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ titleSuffix: SQL Server Language Extensions
4
4
description: You can use the extensibility framework to write programming language extensions for SQL Server. The Extensibility Framework API for Microsoft SQL Server is an API that can be used by a language extension to interact with and exchange data with SQL Server.
You can use the extensibility framework to write programming language extensions for SQL Server. The Extensibility Framework API for Microsoft SQL Server is an API that can be used by a language extension to interact with and exchange data with SQL Server.
17
17
18
-
As a language extension author, you can use this reference together with the open-sourced [Java language extension for SQL Server](../how-to/extensibility-sdk-java-sql-server.md) to understand how to use the API for writing your own language extensions. You can find the source code for the Java language extension at [aka.ms/mssql-lang-extensions](https://aka.ms/mssql-lang-extensions).
18
+
As a language extension author, you can use this reference together with the open-sourced language extensions to understand how to use the API for writing your own. You can find the source code for the language extensions at [aka.ms/mssql-lang-extensions](https://aka.ms/mssql-lang-extensions).
19
19
20
20
Find the syntax and arguments information about all API functions below.
21
21
@@ -30,7 +30,7 @@ Any output by the extension to the standard output or error streams will be trac
30
30
31
31
## Init
32
32
33
-
This function is only called once and is used to initialize the runtime for execution. For example, the Java Extension initializes the JVM.
33
+
This function is only called once and is used to initialize the runtime for execution.
34
34
35
35
### Syntax
36
36
@@ -75,7 +75,7 @@ SQLRETURN Init(
75
75
76
76
## InitSession
77
77
78
-
This function is called once per session and initializing sessionspecific settings.
78
+
This function is called once per session and initializing session-specific settings.
79
79
80
80
### Syntax
81
81
@@ -256,7 +256,7 @@ For SQL_C_CHAR, SQL_C_WCHAR and SQL_C_BINARY data types, values larger than 8000
256
256
*StrLen_or_Ind*
257
257
\[Input\] An integer value indicating the length in bytes of *ParamValue*, or SQL_NULL_DATA to indicate that the data is NULL.
258
258
259
-
StrLen_or_Ind\[col\] can be ignored if a column is not nullable and doesn't represents one of the following data types: SQL_C_CHAR, SQL_C_WCHAR and SQL_C_BINARY, SQL_C_NUMERIC or SQL_C_TYPE_TIMESTAMP. Otherwise it points to a valid array with \[RowsNumber\] elements, where each element contains its length or null indicator data.
259
+
StrLen_or_Ind\[col\] can be ignored if a column is not nullable and doesn't represent one of the following data types: SQL_C_CHAR, SQL_C_WCHAR and SQL_C_BINARY, SQL_C_NUMERIC or SQL_C_TYPE_TIMESTAMP. Otherwise it points to a valid array with \[RowsNumber\] elements, where each element contains its length or null indicator data.
260
260
261
261
*InputOutputType*
262
262
\[Input\] The type of the parameter. The *InputOutputType* argument is one of the following values:
@@ -298,14 +298,14 @@ When `@parallel = 1` in [sp_execute_external_script](../../relational-databases/
298
298
\[Input\] The number of rows in the *Data*.
299
299
300
300
*Data*
301
-
\[Input\] A 2-dimensional array that contains the result set of `@input_data_1` n [sp_execute_external_script](../../relational-databases/system-stored-procedures/sp-execute-external-script-transact-sql.md).
301
+
\[Input\] A two-dimensional array that contains the result set of `@input_data_1` n [sp_execute_external_script](../../relational-databases/system-stored-procedures/sp-execute-external-script-transact-sql.md).
302
302
303
303
The total number of columns is *InputSchemaColumnsNumber* that was received in the [InitSession](#initsession) call. Each column contains *RowsNumber* elements that should be interpreted according to the column type from [InitColumn](#initcolumn).
304
304
305
305
Elements indicated to be NULL in *StrLen_or_Ind* are not guaranteed to be valid and should be ignored.
306
306
307
307
*StrLen_or_Ind*
308
-
\[Input\] A 2-dimensional array that contains the length/NULL indicator for each value in *Data*. Possible values of each cell:
308
+
\[Input\] A two-dimensional array that contains the length/NULL indicator for each value in *Data*. Possible values of each cell:
309
309
310
310
- n, where n > 0. Indicating the length of the data in bytes
311
311
- SQL_NULL_DATA, indicating a NULL value.
@@ -401,19 +401,19 @@ When `@parallel = 1` in [sp_execute_external_script](../../relational-databases/
401
401
\[Output\] A pointer to a buffer that contains the number of rows in the *Data*.
402
402
403
403
*Data*
404
-
\[Output\] A pointer to a 2-dimensional array allocated by the extension that contains the result set of `@script` n [sp_execute_external_script](../../relational-databases/system-stored-procedures/sp-execute-external-script-transact-sql.md).
404
+
\[Output\] A pointer to a two-dimensional array allocated by the extension that contains the result set of `@script` n [sp_execute_external_script](../../relational-databases/system-stored-procedures/sp-execute-external-script-transact-sql.md).
405
405
406
406
The total number of columns should be *OutputSchemaColumnsNumber* that was retrieved in the [Execute](#execute) call. Each column should contain *RowsNumber* elements that should be interpreted according to the column type from [GetResultColumn](#getresultcolumn).
407
407
408
408
*StrLen_or_Ind*
409
-
\[Output\] A pointer to a 2-dimensional array allocated by the extension that contains the length/NULL indicator for each value in *Data*. Possible values of each cell:
409
+
\[Output\] A pointer to a two-dimensional array allocated by the extension that contains the length/NULL indicator for each value in *Data*. Possible values of each cell:
410
410
411
411
- n, where n > 0. Indicating the length of the data in bytes
412
412
- SQL_NULL_DATA, indicating a NULL value.
413
413
414
414
The total number of columns should be *OutputSchemaColumnsNumber* that was received in the [Execute](#execute) call. Each column contains *RowsNumber* elements that should be interpreted according to the column type from [GetResultColumn](#getresultcolumn).
415
415
416
-
StrLen_or_Ind\[col\] will be ignored, if one column is not nullable and doesn't represents one of the following data types: SQL_C_CHAR, SQL_C_WCHAR and SQL_C_BINARY [add dates]. Otherwise it points to a valid array with *RowsNumber* elements, each element contains its length or null indicator data.
416
+
StrLen_or_Ind\[col\] will be ignored, if one column is not nullable and doesn't represent one of the following data types: SQL_C_CHAR, SQL_C_WCHAR and SQL_C_BINARY [add dates]. Otherwise it points to a valid array with *RowsNumber* elements, each element contains its length or null indicator data.
\[Input\] The length of the LibraryInstallDirectory string.
580
580
581
581
*LibraryError*
582
-
\[Output\] An optional output parameter. In case there was an error during the installation of the library, LibraryError would point to a string describing the error.
582
+
\[Output\] An optional output parameter. In case, there was an error during the installation of the library, LibraryError would point to a string describing the error.
0 commit comments