dotConnect Universal Documentation
Devart.Common Namespace / DbScript Class / ExecuteNext(IDataReader) Method
Devart.Common.DbDataReader to store result set.
Example

In This Topic
    ExecuteNext(IDataReader) Method
    In This Topic
    Executes the next statement from the script.
    Syntax
    'Declaration
     
    Public Function ExecuteNext( _
       ByRef reader As IDataReader _
    ) As Boolean
    public bool ExecuteNext( 
       out IDataReader reader
    )

    Parameters

    reader
    Devart.Common.DbDataReader to store result set.

    Return Value

    true if there are more statements to execute; otherwise, false.
    Remarks

    Use ExecuteNext method to execute the statements from the script one by one. Text of the script should be specified by ScriptText property.

    After the method has executed the Progress event fires where you can obtain statement text and process query results. If the statement has produced an error, event Error fires.

    To restart execution from the beginning of the script call Reset method. When ScriptText property is modified DbScript automatically positions on the first statement.

    Example
    This sample demonstrates how to execute script and retrieve information about how many records were affected by a statement. For statements that return a result set the first column is written to console.
    string script =
      "DROP TABLE IF EXISTS DEPT;"+
      "CREATE TABLE DEPT ("+
      "  DEPTNO INT PRIMARY KEY,"+
      "  DNAME VARCHAR(14),"+
      "  LOC VARCHAR(13)"+
      ") TYPE = InnoDB;"+
      "INSERT INTO DEPT VALUES (10,'ACCOUNTING','NEW YORK');"+
      "INSERT INTO DEPT VALUES (20,'RESEARCH','DALLAS');"+
      "INSERT INTO DEPT VALUES (30,'SALES','CHICAGO');"+
      "INSERT INTO DEPT VALUES (40,'OPERATIONS','BOSTON');"+
      "SELECT * FROM DEPT";
    MySqlConnection myConn = new MySqlConnection("User Id=root;Host=localhost;Database=Test");
    MySqlScript myScript = new MySqlScript(script,myConn);
    IDataReader myReader;
    myConn.Open();
    while (myScript.ExecuteNext(out myReader))
    {
      Console.WriteLine("Records affected " + myReader.RecordsAffected); 
      while (myReader.Read()) 
      { 
        Console.WriteLine(myReader.GetString(0)); 
      } 
      myReader.Close(); 
    }
    myConn.Close();
    Dim script As String = _
      "DROP TABLE IF EXISTS DEPT;" + _
      "CREATE TABLE DEPT (" + _
      "  DEPTNO INT PRIMARY KEY," + _
      "  DNAME VARCHAR(14)," + _
      "  LOC VARCHAR(13)" + _
      ") TYPE = InnoDB;" + _
      "INSERT INTO DEPT VALUES (10,'ACCOUNTING','NEW YORK');" + _
      "INSERT INTO DEPT VALUES (20,'RESEARCH','DALLAS');" + _
      "INSERT INTO DEPT VALUES (30,'SALES','CHICAGO');" + _
      "INSERT INTO DEPT VALUES (40,'OPERATIONS','BOSTON');" + _
      "SELECT * FROM DEPT"
    Dim myConn As MySqlConnection = New MySqlConnection("User Id=root;Host=localhost;Database=Test")
    Dim myScript As MySqlScript = New MySqlScript(script, myConn)
    Dim myReader As IDataReader
    myConn.Open()
    While (myScript.ExecuteNext(myReader))
      Console.WriteLine("Records affected " & myReader.RecordsAffected)
      While myReader.Read()
        Console.WriteLine(myReader.GetString(0))
      End While
      myReader.Close()
    End While
    myConn.Close()
    Requirements

    Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

    See Also