Exemplo n.º 1
0
static int
rewind_redo(struct csv* file, int bytes_back, char*** out_fields)
{
	memset(file->buffer, '\0', __CSV_BUF_SIZE);
	errno = 0;
	if (lseek(file->fd, bytes_back, SEEK_CUR) == -1)
		return CSV_E_IO;

	return csv_read_record(file, out_fields);
}
Exemplo n.º 2
0
int mpl_tab_drv_read(MPL *mpl)
{     TABDCA *dca = mpl->dca;
      int ret;
      switch (dca->id)
      {  case TAB_CSV:
            ret = csv_read_record(dca, dca->link);
            break;
         case TAB_XBASE:
            ret = dbf_read_record(dca, dca->link);
            break;
         case TAB_ODBC:
            ret = db_iodbc_read(dca, dca->link);
            break;
         case TAB_MYSQL:
            ret = db_mysql_read(dca, dca->link);
            break;
         default:
            xassert(dca != dca);
      }
      if (ret > 0)
         error(mpl, "error on reading data from table %s",
            mpl->stmt->u.tab->name);
      return ret;
}