Show / Hide Table of Contents

ExecuteReturnRows

Object and Type

Object  : FCSQLExec

Type     : Method

Prototype

Public Sub ExecuteReturnRows(ByVal SqlStr As String)

Description

This method is used to execute a SQL statement against the external database. This method is only used for SQL that DOES return database rows.  The data returned is returned in the Records property (ADODB.Recordset object). If you wish to execute SQL that does not return rows, use the Execute method. If you wish to reuse the SQLExec object (to query the database again), you must close the Record (recordset) object. For example,

SqlObj.Records.Close();

When invoking dynamically created SQL based on user input it is best to use parameterized queries to avoid SQL injection attacks. SQLExec can run Parameterized queries by placing parameter placeholders in the SQL and calling AddSqlParameter with the parameter value before invoking the query. For example,

var sql = "SELECT * FROM table_case WHERE title = {0}"; SqlDB.AddSqlParameter(userInputCaseTitle); SqlDB.Execute(sql);

The SQL provided must be valid SQL for the database system you connect to.

Note: For more information about ADODB Recordsets, please visit the Microsoft website at: http://www.microsoft.com/.

Parameters

Parameter Name Required? Description
SqlStr Yes The SQL statement to execute

Example

The following example demonstrates opening an external connection, executing SQL against it, and closing the connection.

JavaScript:

  // Create an external DB connection
  // Log in

  var SqlDB = FCSession.CreateSQLExec();
  SqlDB.OpenConnection("sql", "sa", "sa", "gaffer", "cl10");

  // Query for a simple table (with one column)
  // Iterate through it and print out the data
  SqlDB.ExecuteReturnRows("select * from foo");

  while (SqlDB.Records.EOF != true)
  {
    Response.Write ("Value: " + SqlDB.Records("out_col"));  
    SqlDB.Records.MoveNext();
  }

  // Now add a row, and close the connection
  SqlDB.Execute("insert into foo values (55)");
  SqlDB.CloseConnection();

Visual Basic:

  Dim sql_db As FCSqlExec
  Set sql_db = fc_session.CreateSqlExec
  sql_db.OpenConnection "sql", "sa", "sa", "gaffer", "cl10"
  sql_db.ExecuteReturnRows "select * from foo"
  sql_db.records.MoveFirst

  While sql_db.records.EOF = False
    MsgBox sql_db.records("out_col")
    sql_db.records.MoveNext | Wend | sql_db.Execute "insert into foo values (44)"
  sql_db.CloseConnection
Back to top © 2022 Dovetail Software, Inc. - All rights reserved.
Clarify, Amdocs, and related products and names are copyright and trademark of Amdocs, Inc.
.NET, Visual Studio.NET, C#, Visual Basic and related products are trademark of Microsoft corporation.