40 #define NCBI_USE_ERRCODE_X Dbapi_BlobStream
67 if(
m_rs != 0 && m_len > 0 )
101 throw runtime_error(
"CByteStreamBuf::underflow(): CResultSet* is null");
104 static size_t total = 0;
106 if( m_column < 0 || m_column != m_rs->CurrentItemNo() ) {
108 _TRACE(
"Column for ReadItem not set, current column: "
109 <<
m_rs->CurrentItemNo());
115 _TRACE(
"Total read from ReadItem: " << total);
117 m_column =
m_rs->CurrentItemNo();
139 (
"CByteStreamBuf::overflow(): CDB_SendDataCmd* is null");
142 static size_t total = 0;
150 memmove(pbase(), pbase() + put, pptr() - pbase() - put);
159 _TRACE(
"Total sent: " << total);
176 throw runtime_error(
"CByteStreamBuf::setbuf(): not allowed");
182 streamsize left = egptr() - gptr();
183 return min(left, (streamsize)1);
virtual CT_INT_TYPE underflow()
virtual ~CByteStreamBuf()
virtual CT_INT_TYPE overflow(CT_INT_TYPE c)
void SetCmd(CDB_SendDataCmd *cmd)
void SetRs(CResultSet *rs)
CByteStreamBuf(streamsize bufsize, TBlobOStreamFlags flags=0, CDB_Connection *conn=NULL)
virtual streamsize showmanyc()
unique_ptr< CAutoTrans > m_AutoTrans
virtual streambuf * setbuf(CT_CHAR_TYPE *p, streamsize n)
virtual int GetColumnNo()
Get column number, currently available for Read()
virtual size_t Read(void *buf, size_t size)
Read unformatted data.
static CS_CONNECTION * conn
@ fBOS_UseTransaction
Use a (sub)transaction (committed once all data's been sent successfully, rolled back for unrecoverab...
virtual bool HasMoreResults() const
virtual size_t SendChunk(const void *data, size_t size)
Send chunk of data to the server.
#define NCBI_CATCH_ALL_X(err_subcode, message)
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition of all error codes used in dbapi libraries (dbapi_driver.lib and others).
static PCRE2_SIZE bufsize