def open
      set_cursor_tuple_fraction
      @cursor = @options[:cursor_name] || ("cursor_" + SecureRandom.uuid.delete("-"))
      hold = @options[:with_hold] ? "with hold " : ""
      @result = @connection.execute("declare #{@cursor} no scroll cursor #{hold}for #{@sql}")
      @block = []
    end
Public: Opens (actually, "declares") the cursor. Call this before fetching