Class PGCopyInputStream

    • Constructor Detail

      • PGCopyInputStream

        public PGCopyInputStream​(PGConnection connection,
                                 String sql)
                          throws SQLException
        Uses given connection for specified COPY TO STDOUT operation.
        Parameters:
        connection - database connection to use for copying (protocol version 3 required)
        sql - COPY TO STDOUT statement
        Throws:
        SQLException - if initializing the operation fails
      • PGCopyInputStream

        public PGCopyInputStream​(CopyOut op)
        Use given CopyOut operation for reading.
        Parameters:
        op - COPY TO STDOUT operation
    • Method Detail

      • readFromCopy

        public byte[] readFromCopy()
                            throws SQLException
        Description copied from interface: CopyOut
        Blocks wait for a row of data to be received from server on an active copy operation.
        Specified by:
        readFromCopy in interface CopyOut
        Returns:
        byte array received from server, null if server complete copy operation
        Throws:
        SQLException - if something goes wrong for example socket timeout
      • readFromCopy

        public byte[] readFromCopy​(boolean block)
                            throws SQLException
        Description copied from interface: CopyOut
        Wait for a row of data to be received from server on an active copy operation.
        Specified by:
        readFromCopy in interface CopyOut
        Parameters:
        block - true if need wait data from server otherwise false and will read pending message from server
        Returns:
        byte array received from server, if pending message from server absent and use no blocking mode return null
        Throws:
        SQLException - if something goes wrong for example socket timeout
      • getFormat

        public int getFormat()
        Specified by:
        getFormat in interface CopyOperation
        Returns:
        overall format of each row: 0 = textual, 1 = binary
      • getFieldFormat

        public int getFieldFormat​(int field)
        Specified by:
        getFieldFormat in interface CopyOperation
        Parameters:
        field - number of field (0..fieldCount()-1)
        Returns:
        format of requested field: 0 = textual, 1 = binary
      • getFieldCount

        public int getFieldCount()
        Specified by:
        getFieldCount in interface CopyOperation
        Returns:
        number of fields in each row for this operation
      • isActive

        public boolean isActive()
        Specified by:
        isActive in interface CopyOperation
        Returns:
        is connection reserved for this Copy operation?
      • getHandledRowCount

        public long getHandledRowCount()
        Description copied from interface: CopyOperation
        After successful end of copy, returns the number of database records handled in that operation. Only implemented in PostgreSQL server version 8.2 and up. Otherwise, returns -1.
        Specified by:
        getHandledRowCount in interface CopyOperation
        Returns:
        number of handled rows or -1