DB read

DB read — reading from databases

Functions

Types and Values

Includes

#include <gretl/libgretl.h>
#include <gretl/dbread.h>

Description

Functions that read data from native gretl databases.

Functions

retrieve_float ()

float
retrieve_float (netfloat nf);

series_info_init ()

void
series_info_init (SERIESINFO *sinfo);

series_info_set_description ()

void
series_info_set_description (SERIESINFO *sinfo,
                             const char *s);

get_native_db_data ()

int
get_native_db_data (const char *dbbase,
                    SERIESINFO *sinfo,
                    double **Z);

Parameters

Z

data array.

 

Returns

0 on success, non-zero code on failure.


get_remote_db_data ()

int
get_remote_db_data (const char *dbbase,
                    SERIESINFO *sinfo,
                    double **Z);

Parameters

Z

data array.

 

Returns

0 on success, non-zero code on failure.


get_pcgive_db_data ()

int
get_pcgive_db_data (const char *dbbase,
                    SERIESINFO *sinfo,
                    double **Z);

Parameters

Z

data array.

 

Returns

0 on success, non-zero code on failure.


get_rats_db_data ()

int
get_rats_db_data (const char *fname,
                  SERIESINFO *sinfo,
                  double **Z);

Read the actual data values for a series from a RATS database.

Parameters

fname

name of RATS 4.0 database to read from

 

sinfo

holds info on the given series (input)

 

Z

data matrix

 

Returns

0 on successful completion, E_FOPEN if the data could not be read, and DB_MISSING_DATA if the data were found but there were some missing values.


read_rats_db ()

dbwrapper *
read_rats_db (const char *fname,
              FILE *fp);

Read the series info from a RATS 4.0 database: read the base block at offset 0 in the data file, and recurse through the directory entries.

Parameters

fname

database filename.

 

fp

pre-opened stream (caller to close it)

 

Returns

pointer to a dbwrapper containing the series info, or NULL in case of failure.


read_pcgive_db ()

dbwrapper *
read_pcgive_db (const char *fname,
                FILE *fp);

Read the series info from a PcGive database, .in7 file

Parameters

fname

name of database file.

 

fp

pre-opened stream (caller to close it)

 

Returns

pointer to a dbwrapper containing the series info, or NULL in case of failure.


dbwrapper_new ()

dbwrapper *
dbwrapper_new (int n,
               const char *fname,
               int dbtype);

Parameters

n

initial number of series.

 

fname

database filename.

 

dbtype

database type code.

 

Returns

an allocated database series wrapper.


dbwrapper_destroy ()

void
dbwrapper_destroy (dbwrapper *dw);

Frees all resources associated with dw as well as the pointer itself.

Parameters

dw

database series wrapper.

 

set_db_name ()

int
set_db_name (const char *fname,
             int filetype,
             PRN *prn);

get_db_name ()

const char *
get_db_name (void);

dbnomics_is_open ()

int
dbnomics_is_open (void);

set_odbc_dsn ()

int
set_odbc_dsn (const char *line,
              PRN *prn);

db_set_sample ()

int
db_set_sample (const char *star,
               const char *stop,
               DATASET *dset);

db_get_series ()

int
db_get_series (const char *line,
               DATASET *datainfo,
               gretlopt opt,
               PRN *prn);

db_delete_series_by_name ()

int
db_delete_series_by_name (const char *line,
                          PRN *prn);

db_delete_series_by_number ()

int
db_delete_series_by_number (const int *list,
                            const char *fname);

db_range_check ()

int
db_range_check (int db_pd,
                const char *db_stobs,
                const char *db_endobs,
                const char *varname,
                DATASET *dset);

check_db_import_conversion ()

int
check_db_import_conversion (int pd,
                            DATASET *dset);

transcribe_db_data ()

int
transcribe_db_data (DATASET *dset,
                    int targv,
                    const double *src,
                    int pd,
                    int nobs,
                    char *stobs,
                    CompactMethod cmethod);

lib_spread_db_data ()

int
lib_spread_db_data (double **dbZ,
                    SERIESINFO *sinfo,
                    DATASET *dset,
                    PRN *prn);

lib_spread_dbnomics_data ()

int
lib_spread_dbnomics_data (DATASET *dset,
                          DATASET *dbset,
                          PRN *prn);

compact_dataset ()

int
compact_dataset (DATASET *dset,
                 int newpd,
                 CompactMethod default_method,
                 int wkstart,
                 int repday);

Compact the data set from higher to lower frequency.

Parameters

dset

dataset struct.

 

newpd

target data frequency.

 

default_method

code for the default compaction method.

 

wkstart

the day on which a week is deemed to start: 1 for Monday or 7 for Sunday; relevant only for daily to weekly compaction.

 

repday

"representative day" for conversion from daily to weekly data (with method COMPACT_WDAY only). Value 1 to 7 with 1 = Monday, or 0 to ignore it.

 

Returns

0 on success, non-zero error code on failure.


expand_dataset ()

int
expand_dataset (DATASET *dset,
                int newpd);

Expand the data set from lower to higher frequency: an "expert" option. This is supported only for expansion from annual to quarterly or monthly, or from quarterly to monthly.

Parameters

dset

dataset struct.

 

newpd

target data frequency.

 

Returns

0 on success, non-zero error code on failure.


midas_days_per_period ()

int
midas_days_per_period (int days_per_week,
                       int pd);

Types and Values

DB_DESCRIP_LEN

#define DB_DESCRIP_LEN 72  /* size of array to hold "# description" */

DB_INIT_ROWS

#define DB_INIT_ROWS 32

enum DBError

Members

DB_MISSING_DATA

   

DB_NO_SUCH_SERIES

   

DB_PARSE_ERROR

   

dbnumber

typedef float dbnumber;

The type used for representing primary data in gretl databases.


SERIESINFO

typedef struct {
    int t1, t2, v;
    char varname[VNAMELEN];
    char *descrip;
    int nobs;
    char stobs[OBSLEN];
    char endobs[OBSLEN];
    int pd;
    int offset;
    int err;
    int undated;
    void *data;
} SERIESINFO;

dbwrapper

typedef struct {
    char *fname;
    int dbtype;
    int nv;
    int nalloc;
    SERIESINFO *sinfo;
} dbwrapper;

ODBC_OBSCOLS

#define ODBC_OBSCOLS 3

ODBC_info

typedef struct {
    char *dsn;
    char *username;
    char *password;
    char *query;
    char **fmts;
    char coltypes[ODBC_OBSCOLS];
    double **X;
    char **S;
    gretl_string_table *gst;
    int nrows;
    int obscols;
    int nvars;
} ODBC_info;

netfloat

typedef struct {
    long frac;
    short exp;
} netfloat;