ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / Managing databases / SQL functions
  • Loading the query in memory
  • Partial Fetch
  • Miscellaneous
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Positions on the first row of the query result. This row becomes the current row.
If controls or variables are associated with the columns of query result (SQLAssociate), the values found in the current row are automatically assigned to these elements.
In most cases, SQLFirst is used in a read loop with SQLNext.
Caution: This function must be used during an SQLFirst/SQLCol browse of query result. For more details, see Types of SQL browse.
Java The partial fetch is automatically performed by the Java framework.
// Initialize the scrollbar parameters at the end of query
ResSQL = SQLExec("SELECT CUSTLASTNAME, FIRSTNAME, ADDR1, ADDR2, CITY, ZIP FROM CUSTOMER", ...
"QRY1")
IF ResSQL = True THEN
// Displays the first row
SQLFirst("QRY1")
// Initializes the upper bound of the scrollbar
SCROLL_SCROLL1..MaxValue = SQL.NbLine
// Positions the scrollbar at the beginning
SCROLL_SCROLL1 = 1
ELSE
// Processes the error
END
SQLClose("QRY1")
Syntax
SQLFirst([<Number of rows>, ] <Query name>)
<Number of rows>: Optional integer
Number of rows that will be loaded in memory every second. This number of rows will constitute a block for the partial Fetch.
Parameter required to perform a read by partial Fetch.
Java This parameter is ignored. Indeed, the partial Fetch is automatically performed by the Java framework.
<Query name>: Character string
Query name:
Java The queries created in the query editor must be specified in the format of a character string.
Remarks

Loading the query in memory

If SQLFirst is called immediately after SQLExec, the query result is loaded in memory. Two methods are available:
  • Entirely load the query in memory if <Number of rows> is not specified. The number of records corresponding to the query result is automatically calculated. The SQL.NbLine variable is updated.
  • Partially load the query in memory (also called partial fetch) if <Number of rows> is specified.
    Only the first block of rows is loaded in memory. The following blocks are automatically loaded in background task (mechanism of partial fetch). The SQL.Retrieving variable (updated by SQLInfo) is used to find out whether the result was entirely retrieved.
    Remark: Depending on the process performed, the partial fetch is used to reduce the network bandwidth.
Java The partial fetch is automatically performed by the Java framework. The SQL.Retrieving variable is never initialized and it always returns False.
WINDEVWEBDEV - Server codeReports and QueriesWindowsUser code (UMC)PHPAjaxHFSQL ClassicHFSQL Client/ServerHyper File 5.5OLE DBODBCNative Connectors (Native Accesses)

Partial Fetch

If you are using the Partial Fetch to retrieve the query result (see the example for this function):
  • If SQLClose is called while the retrieval is not completed, the retrieval is stopped and the query is closed.
  • This method can be used with several queries at the same time.
  • The SQL.Retrieving variable (updated by SQLInfo) is used to find out whether the result was entirely retrieved.

Miscellaneous

  • If the pointer is positioned outside the query result, the SQL.Out variable is set to True.
  • The SQL.Current variable contains the number of the current row.
  • SQLTable must not be used after SQLFirst. A fatal error is generated.
Component: wd300hf.dll
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 05/26/2022

Send a report | Local help